Newsgroups: comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!news2.near.net!MathWorks.Com!yeshua.marcam.com!zip.eecs.umich.edu!newsxfer.itd.umich.edu!gatech!howland.reston.ans.net!pipex!uunet!winternet.com!news2.mr.net!mr.net!medtronic.com!rosevax!reddwarf!grante
From: grante@reddwarf.rosemount.com (Grant Edwards)
Subject: Re: Scheme GUI support
Message-ID: <1994Oct17.143820.10770@rosevax.rosemount.com>
Sender: news@rosevax.rosemount.com (Rosevax USENET News auto-admin account)
Nntp-Posting-Host: reddwarf
Organization: Fisher-Rosemount, Rosemount Inc.
X-Newsreader: TIN [version 1.2 PL2]
References: <1994Oct8.115151.17399@news.cs.indiana.edu> <hbakerCxEz5z.CEF@netcom.com> <CxKA9E.CHp@cerc.wvu.edu> <hbakerCxL9vx.AAx@netcom.com> <thinmanCxMJ6q.MI7@netcom.com>
Date: Mon, 17 Oct 1994 14:38:20 GMT
Lines: 34

Technically Sweet (thinman@netcom.com) wrote:

: Scheme really does need some sort of OS interface extension for
: doing graphics and networking nicely.  A new kind of file I/O
: port where creation takes a random set of arguments makes 
: sense.  One type of argument set would make various kinds of
: graphics entities, another would create network ports.

: There would be the official graphics argument set which does generic
: 2D graphics things, and OS-specific sets which let you do spiffy
: Windows, Mac, or X apps.  But the pan-OS argument sets are very
: important: if I write a Scheme program, it should work anywhere.

: One problem with integrating this is that graphics and networking
: like to work in thread/continuation modes, and the system should
: provide transparent support for activating continuations if
: a continuation is waiting on this or that port.  To do this well
: requires adding explicit concurrent controls to Scheme.
: Otherwise it's going to be klunky, and people won't use it.

STk is a Scheme implementation that provides some of what you're
asking for.  It has integrated support for the Tk X11 widget set made
popular by Tcl/Tk.  I run STk under Solars 2.3 and Linux 1.0.  It
isn't, however, portable to Windows or MacOS (which is a feature if
you want to cop an attitude).

The network port idea sounds like a good one, sending strings back and
forth should be simple enought, but binary data would be a challenge.

--
Grant Edwards                                 |Yow!  Alright, you!!  Imitate
Rosemount Inc.                                |a WOUNDED SEAL pleading for a
                                              |PARKING SPACE!!
grante@rosemount.com                          |
