Newsgroups: comp.lang.scheme,comp.lang.scheme.scsh
Path: cantaloupe.srv.cs.cmu.edu!bb3.andrew.cmu.edu!newsfeed.pitt.edu!gatech!csulb.edu!hammer.uoregon.edu!hunter.premier.net!news.mathworks.com!howland.erols.net!netcom.com!hbaker
From: hbaker@netcom.com (Henry Baker)
Subject: Re: Functional PostScript 1.0
Content-Type: text/plain; charset=ISO-8859-1
Message-ID: <hbaker-0111961242540001@10.0.2.1>
Sender: hbaker@netcom18.netcom.com
Content-Transfer-Encoding: 8bit
Organization: nil
X-Newsreader: Yet Another NewsWatcher 2.2.0
References: <32796049.4C0024FD@mit.edu>
Mime-Version: 1.0
Date: Fri, 1 Nov 1996 20:42:54 GMT
Lines: 26
Xref: glinda.oz.cs.cmu.edu comp.lang.scheme:17294 comp.lang.scheme.scsh:266

In article <32796049.4C0024FD@mit.edu>, Wandy Sae-Tan <wandy@mit.edu> wrote:

> The Scheme Underground is pleased to announce that Functional
> PostScript, release 1.0, is now available for Internet retrieval.
> 
> FPS is a portable system for doing device-independent, resolution-
> independent graphics from Scheme programs.  It is PostScript, with
> the Forth computational engine replaced with Scheme.
> 
> FPS is tightly based upon PostScript. It uses *exactly* the PostScript
> base rendering primitives. For example, it understands PostScript AFM
> files, and can render text using general PostScript fonts.

It's fairly trivial to _compile_ Scheme into Postscript, or at least
a pretty good subset of Scheme.  I understand from usenet gossip last
year that some compiler courses target Postscript as a 'machine language'.

Since Postscript level 2 has garbage collection, it should be quite reasonable
to move _most_ of the computation into the printer!

See

ftp://ftp.netcom.com/pub/hb/hbaker/ForthStack.html (also .ps.Z)

for one example of compilation of Lisp->Postscript.  This shows how to
do things like the Y combinator in Postscript!
