Newsgroups: comp.lang.scheme
Path: cantaloupe.srv.cs.cmu.edu!das-news2.harvard.edu!oitnews.harvard.edu!purdue!lerc.nasa.gov!usenet.ins.cwru.edu!gatech!news.mathworks.com!newsfeed.internetmci.com!howland.reston.ans.net!news.sprintlink.net!noc.netcom.net!news3.noc.netcom.net!ix.netcom.com!netcom.com!activis
From: activis@netcom.com (ActiVision)
Subject: Re: Scheme for PowerMacs?
Message-ID: <activisDEG1FD.n3w@netcom.com>
Organization: NETCOM On-line Communication Services (408 261-4700 guest)
X-Newsreader: TIN [version 1.2 PL1]
References: <siegel-0509951425400001@lucky111.acns.nwu.edu>
Date: Tue, 5 Sep 1995 17:47:37 GMT
Lines: 52
Sender: activis@netcom16.netcom.com

Stephen F. Siegel (siegel@math.nwu.edu) wrote:

: Are there (free or otherwise) native Scheme implementations for
: a Power Macintosh? I can run MacGambit in 68030 emulation mode but
: that's obviously not as fast. 

: Does anybody have recommendations for Scheme implementations on a Mac
: (native to PowerPC or not)?

Stephen,

There are a variety of routes for PowerMac Scheme programmers to follow:

1) In exactly the same place as MacGambit is Gambit-C, including a Mac
   port that includes CodeWarrior projects.  If you have CodeWarrior
   (and if you don't, you should; their Academic pricing is a steal)
   you can compile your Scheme to C and then compile the C and link with
   the runtime library.  Yes, you lose some efficiency in absolute terms
   by using C as an intermediate language, but it's still a couple times
   as fast as running MacGambit's 680x0 code under emulation--at least
   under the old emulator.  I haven't tried it with either Apple's new
   emulator or SpeedDoubler.

   ftp:\\ftp.iro.umontreal.ca/pub/parallele/gambit/gambit-2.2, or however
   the blasted URL is supposed to look.

2) DEC's Scheme-to-C compiler has also been ported to the Mac, but I
   haven't looked at it in quite some time.

   ftp:\\gatekeeper.dec.com/pub/DEC/Scheme-to-C, if memory serves me
   correctly.

3) Paul Wilson's group at the University of Texas has been working on
   RScheme for some time.  RScheme is another Scheme to C system, but
   with an attitude: it offers what are getting to be some common
   extensions, such as threads, but also offers modules, TCP/IP
   support, and threatens a Dylan-like object system in the future.
   I'm primarily interested in it because it seems likely that it will
   also offer easy (trivial?) integration with the same group's whizzy
   real-time garbage collector.  As cool as Gambit is, it suffers from
   the constraints placed on the garbage collector out of the desire to
   support multiprocessing on platforms such as the BBN Butterfly.  I don't
   know, offhand, if anyone has successfully implemented even ephemeral,
   let alone real-time, GC in the presence of multiprocessing.

   Note that RScheme isn't anywhere near as polished as Gambit-C or
   Scheme-to-C, and in particular, the Mac port is badly out-of-date wrt the
   various UN*X versions.

Hope this helps,
Paul Snively
psnively@activision.com
