From mboxrd@z Thu Jan 1 00:00:00 1970 Message-ID: <48bd99a2b930b1873934ae9a7a9f9a84@terzarima.net> From: Charles Forsyth Date: Tue, 31 Mar 2009 12:52:40 +0100 To: 9fans@9fans.net In-Reply-To: <6e35c0620903302136y683a8de6kff4a72ae490c4ef9@mail.gmail.com> MIME-Version: 1.0 Content-Type: text/plain; charset="US-ASCII" Content-Transfer-Encoding: 7bit Subject: Re: [9fans] GSOC: Drawterm for the iPhone Topicbox-Message-UUID: ce1cf6a0-ead4-11e9-9d60-3106f5b1d025 >Inferno plug-in for Safari? We had a go at a plug-in for Firefox in gsoc2007. These things (like drawterm, or a hosted Inferno port) are either very easy or very hard. "very easy" because if the environment is suitable, the portability interface for hosted Inferno is basically trivial: 513 FreeBSD/os.c 477 Irix/os.c 539 Linux/os.c 528 NetBSD/os.c 798 Nt/os.c 524 OpenBSD/os.c 422 Plan9/os.c 437 Solaris/os.c it needs a way to create shared-memory processes; a way for them to block, be made ready, and exit; a way for a process to allocate more shared memory; a way to interrupt a process when blocked or in a system call (Nt loses badly there); and some trivia. if graphics is needed to get a basic system running: 755 MacOSX/win.c 795 Nt/win.c 564 Plan9/win.c 1620 port/win-x11a.c (no prizes for spotting the outlier there) for the original IE plugin, it was more involved: 840 Nt/ie-os.c 224 Nt/ie-win.c although most of the code in ie-os.c is the same as os.c; the ie-win just connects to separate code that actually links to IE: 1242 emu.cpp 54 factory.cpp 697 inferno.cpp 59 main.cpp (a lot of that is automatically generated; and there are now easier ways to do it, by the way) next to MacOSX, that's probably the biggest example of "hard". the firefox plug-in was potentially "hard" (because the people that define browser plug-in interfaces aren't good at defining operating systems) and became "very hard" because its ways are not our ways, and by the time the gsoc student realised that, it was too late. several people had earlier bounced off a plug-in for netscape. (i don't know the details because i wasn't involved.) with both firefox and netscape (and no doubt with Safari) it could well be that more knowledge or more effort would have it end up in the "fairly easy" or "not to hard" category, but so far that hasn't happened. obviously i'm leading up to say that perhaps Safari is much nicer to us than all the other browsers, but given its environment, i wouldn't start out with that assumption, especially a second time for GSoC. with both the Safari and some other suggestions, i think i'd be a little happier if more of the ground work had been done during the last few months and GSoC were completing the tasks or even exploring their application, not setting out.