Newsgroups: comp.lang.scheme,comp.lang.tcl
Path: cantaloupe.srv.cs.cmu.edu!rochester!udel!news.mathworks.com!newsfeed.internetmci.com!in2.uu.net!news1.digital.com!decwrl!amd!netcomsv!uu4news.netcom.com!netcomsv!uu3news.netcom.com!ix.netcom.com!netcom.com!thinman
From: thinman@netcom.com (Technically Sweet)
Subject: Re: scsh in scm and Scheme gui's
Message-ID: <thinmanDKJE98.Ds5@netcom.com>
Organization: International Foundation for Internal Freedom
References: <qijzqcm3nz9.fsf@lambda.ai.mit.edu> 	<87zqcm3pt0.fsf@organon.serpentine.com> 	<4bjskn$o6b@jive.cs.utexas.edu> 	<87loo1lnde.fsf@organon.serpentine.com> 	<1995Dec30.142021.2458@chemabs.uucp> <87ag4a8g78.fsf@organon.serpentine.com>
Date: Tue, 2 Jan 1996 04:39:08 GMT
Lines: 51
Sender: thinman@netcom6.netcom.com
Xref: glinda.oz.cs.cmu.edu comp.lang.scheme:14699 comp.lang.tcl:40384



I've been kicking this around in my head (and am currently wrestling
with the same problem of portable UI interfacing in another context)
and gotta say that the cleanest choice I know of, and the easiest
to make work and support in the long term, is to use HTML browsers
for your UI displayer substrate.

Fact the first:
There is a library in ftp.sunet.se:/pub/multimedia/graphics/gif/gd
called 'gd'.  This stands for 'gif draw', and the library generates
incremental animated GIFs for HTML use.  That is, you say 'draw line'
and the library emits the appropriate small sequence of GIF LZW jazz that 
causes Netscape et al to alter an existing image to have a line in it.
I'm sure that people working on HTML interfacing for Scheme know about
this library and have or will use it.

Fact the second:
Netscape now supports something called the 'plug-in' interface.
This is a binary overlay that the browser program loads in and runs.
You can write a plug-in that receives data from the web site,
emits HTML data (including the above gif data) into the Netscape
browser, operates as a data filter between the first two, and opens
new URL connections to remote sites.  It is a very simple interface,
and a friend's first reaction to it was, "This will be the machine
code of the Net".

My point in all this is to suggest that supporting, portably, the current
array of hokey graphics libraries is not the only game in town.  It
is clear to me that HTML will slowly supplant direct graphics.  It is
also clear to me the amount of effort you folks are talking about 
should be invested in the future, and not the present: into 90's tech 
and not 80's tech.

Combining these two, we find that SIOD (updated for RSR4) + 'gd' would 
make a wonderful plug-in for Scheme apps.  You can use it like Display
Postscript: emit small bits of Scheme into the plug-in to do real-time
graphics for you, and get suitably condensed info from the interaction.

The SIOD plug-in would need a few basic libraries for reading and emitting
HTML, nothing fancy or large.

The dev kits for the Mac and Windows versions of the plug-in system
are in ftp://ftp.netscape.com/2.0b3/sdk/, and I assume Unix versions
will appear someday.  

-- 

Lance Norskog
thinman@netcom.com
Artisputtingtogether. Art  s th ow n  aw y.
