--
Erik Max Francis / m...@alcyone.com / http://www.alcyone.com/max/
__ San Jose, CA, US / 37 20 N 121 53 W / ICQ16063900 / &tSftDotIotE
/ \ Laws are silent in time of war.
\__/ Cicero
Esperanto reference / http://www.alcyone.com/max/lang/esperanto/
An Esperanto reference for English speakers.
Regards, Ulrich
I'm playing with MzScheme. It has threads, exceptions,
modules/unit/packages, networking, XML, ODBC and other such stuff that
appeal to people used to other "batteries included" programming systems.
--
Ng Pheng Siong <ng...@netmemetic.com> * http://www.netmemetic.com
> What's a good choice of Scheme interpreters for Linux and UNIX?
Imagine if you will, that you have suddenly sprouted long golden locks of
hair, we shall call you Goldilocks. Now Goldilocks you have just
entered the hodge podge porridge world of Scheme. Before you lies an
endless row of bowl after bowl of Scheme porridge each one guaranteed to
be too hot or too cold and none is just right.
If you don't find a Scheme that you like just wait there's a new one every
week or so.
1. MIT Scheme. My personal favorite. Huge library with the unique
feature of having a native compiler in Scheme which is very fast and a
generational GC system.
Second plus is it appears that Chris Hanson, who has been maintaining it
for 20 years is showing signs of dusting it off and taking it out of
hiatus. He has announced hygenic macros coming in 1-2 months and is
targeting a module system based upon Scheme48s by the end of the year. If
he pulls it off and MITScheme gets a solid module system in place it
could be a real contender. [above base upon a recent email and posting
from Chris.]
2. PLT. Its got the big MO. A group of profs scattered over several
universities are behind the effort. They got brains, don't have real jobs
have plenty of spare time and can enslave starving students lured by pizza
money to write code. Every so often, like mana from the heavens, they
briefly manifest themselves here in c.l.s. primarily because I think they
like the attention.
If you are just starting out look with Scheme, you MUST look at the PLT
2.0 alpha 9 announced here in group. Its looking good. Its libraries are
more vertical then horizonal. You might not find bitmaps or super socket
support but you will find database bindings, implementations of several
web protocols, smtp, http (server!) etc... It has a very heavy focus on
learning Scheme and programming in general. Very complete IDE system.....
3. Bigloo. Its a Scheme -> C compiler. Active project. You can build
stand alone executables. You get fast code. Lots of non-standard
extensions to the Scheme language.
4. Scheme48. Light nimble Scheme system. No fancy stuff. Good binding to
OS. Bread and butter Scheme. Interpreted.
5. scsh. Extends Scheme48(?). Most of the additional stuff has to do
with adding unix shell like capabilites. So again good binding to the
OS. Interpreted.
6. Guile. GNU blessed. Lives on Linux. Also good for adhoc scripting on a
Linux box along with Scheme48 and scsh. Good binding to lots of useful
stuff. For example, I needed to write a quick script to add, remove,
modify users in the CVS password file. I used Guile as it was easy to
script and it had a binding to the unix crypt funtion to crypt passwords.
Sure you write it, but Guile had it already. Interpreted.
There ya go Goldilocks, 6 bowels of porridge all too hot, or all too cold.
No go out and live happily ever after.
All of the above, is of coures, IMHO. Any factual errors or debatable
points such as whether profs have real jobs will of course be immediately
corrected here in the group.
Ray
IMHO, If you want a full R5RS interpreter, and are not interested in
compiling your programs, Petite Chez Scheme is the one you are looking
for.
It is very well documented (the download includes the book "The Scheme
Programming Language (2nd ed.)" and a user's manual, both in HTML
format.
Moreover, it is one of the few Schemes to implement the whole of R5RS.
Petite is at http://www.scheme.com/
> IMHO, If you want a full R5RS interpreter, and are not interested in
> compiling your programs, Petite Chez Scheme is the one you are looking
> for.
> It is very well documented (the download includes the book "The Scheme
> Programming Language (2nd ed.)" and a user's manual, both in HTML
> format.
> Moreover, it is one of the few Schemes to implement the whole of R5RS.
What are the parts of R5RS that are not generally implemented?
I think one of the big ones is the macro system. A lot of people don't
like it, so they don't implement it. Some implementations only have
limited support for numeric functions. Some implementations choose not to
implement tail recursion as specified in the standard because it interacts
poorly with their compilation technique (e.g. Bigloo, Stalin, Kawa (?)).
I would also bet a cupcake that there are some that fail to support
dynamic wind.
David Feuer
> On Thu, 31 Jan 2002, Erik Max Francis wrote:
> > What are the parts of R5RS that are not generally implemented?
>
> I think one of the big ones is the macro system. A lot of people don't
> like it, so they don't implement it.
IIRC, when I posted some R5RS macro code on this group and asked if it
worked on other (non-Kawa) Scheme's that supported R5RS macros, I got
replies re. 4 or 5 major Scheme implementations.
Yes, a lot of people like low-level macros, but nothing prevents
implementing hygienic macros in addition.
> Some implementations choose not to
> implement tail recursion as specified in the standard because it interacts
> poorly with their compilation technique (e.g. Bigloo, Stalin, Kawa (?)).
Kawa has full tail recursion as a command-line option, and allows
interaction between code compiled with/without this option. What it
doesn't yet support is capturable continuations ("downwards"
continuations, named for the direction execution goes. I always get
confused with upwards/downwards because I think of the direction the
value of the escape procedure goes).
> 2. PLT.
In addition, v200 onward (some of this true in earlier versions also):
PLT Scheme has a Scheme-to-C compiler. DrScheme can produce launchers
to quick-start programs (Scheme | Create Executable ...). Full R5RS
support. Includes SYNTAX-CASE, the superior macro system first
designed and implemented by the creators of Chez Scheme. Includes
Dorai Sitaram's book "Teach Yourself Scheme in Fixnum Days" for
beginners. Brand-spankin'-new module system for program construction,
to complement the unit system for program organization. Extensive,
searchable documentation. Bundled PLT Web server, with special
support for interactive Web programming. Several games. Attitude.
Downsides: not blessed by GNU and none of the people involved have
anything to do with MIT, so they're doing all this without a permit.
Herr Prof. Dr. Shriram
PS: The kids these days are doing crunchy, new-age health food stuff,
Ray. Expensive stuff. Cheap pizza doesn't seem to cut it.
> Downsides: not blessed by GNU and none of the people involved have
> anything to do with MIT, so they're doing all this without a permit.
Scheme without MIT affiliation? LGPL without GNU affiliation? Somebody
stop these renegades before they do something *really* dangerous (like
make the DrScheme stepper work with full scheme :-)
> IIRC, when I posted some R5RS macro code on this group and asked if it
> worked on other (non-Kawa) Scheme's that supported R5RS macros, I got
> replies re. 4 or 5 major Scheme implementations.
>
> Yes, a lot of people like low-level macros, but nothing prevents
> implementing hygienic macros in addition.
Thanks for all the replies, guys, you've helped immensely.
Where can I find some (good) examples of using the compiler to C?
I've found the libraries and functions through the help desk but
am having some trouble making a compiler -- for example, the help
says "(compile-extension expr) returns a compiler that is initialized
with the elaboration-time expression 'expr". What should expr be?
--
+-------------------------------------------------------------------------+
| Eugene Wallingford wall...@cs.uni.edu |
| University of Northern Iowa |
+-------------------------------------------------------------------------+
Look at the mzc manual. It's easiest to invoke it from the command line:
mzc magic-incantations-from-the-manual file1 ...
Hmmm. Does anyone know what kind of licencing they have for Chez
Scheme? If I like it I might want to buy it for home for semi personal
use. When they don't post prices that generally gives me the willies.
Also do they support MOP via PCL ( or any other way )?
I thought PCL was CL-specific. The web site suggests as much; all the
platforms it seems to run on are CLs of some provenance...
--
(concatenate 'string "cbbrowne" "@acm.org")
http://www.ntlug.org/~cbbrowne/eventdriven.html
Rules of the Evil Overlord #121. "If I come into possession of an
artifact which can only be used by the pure of heart, I will not
attempt to use it regardless." <http://www.eviloverlord.com/>
It's expensive. I checked into this about six months ago. They're more
than happy to send you a price list if you ask.
david rush
--
... it's just that in C++ and the like, you don't trust _anybody_,
and in CLOS you basically trust everybody. the practical result
is that thieves and bums use C++ and nice people use CLOS.
-- Erik Naggum
>I thought PCL was CL-specific. The web site suggests as much; all the
>platforms it seems to run on are CLs of some provenance...
GK ported a version to Scheme. Take a look at STKlos.
The question is whether the particular implementation can handle the
port, or whether they themselves ported a version.
> olc...@interaccess.com (Thaddeus L Olczyk) writes:
> > Hmmm. Does anyone know what kind of licencing they have for Chez
> > Scheme? If I like it I might want to buy it for home for semi personal
> > use. When they don't post prices that generally gives me the willies.
>
> It's expensive. I checked into this about six months ago. They're more
> than happy to send you a price list if you ask.
I don't understand this. Isn't Scheme a language with a user base of
about 3 people, who only use it recreationally? Nobody uses it for
business purposes, so who would pay expensive license fees? How has
Chez Scheme managed to stay afloat all these years? Is it a company run
as a hobby by someone with other income?
In short, no.
> Nobody uses it for
> business purposes, so who would pay expensive license fees?
That's simply not true. It is used in-house at quite a few places.
The alternative explanation of course being that your assumption about it
being a hobby language is wrong...
--
Sander
+++ Out of cheese error +++
> Bruce Lewis wrote:
> > Nobody uses it for
> > business purposes, so who would pay expensive license fees?
>
> That's simply not true. It is used in-house at quite a few places.
So where are these places and why are they silent? Are there 50,000
companies out there all quietly wondering if they should stop using
Scheme because it appears that nobody else is using it?
Several years back there was a list published of how Scheme was used
various places, but they were largely mickey-mouse type companies. I
haven't seen a recent list.
Hmm. I have my suspicions regarding what Bruce Lewis is really
assuming...
Jon Kåre
> I don't understand this. Isn't Scheme a language with a user base of
> about 3 people, who only use it recreationally? Nobody uses it for
> business purposes, so who would pay expensive license fees?
I have no idea about how widely it is used in the business world, but
quite a few papers on compilation of Scheme mentions that they use Chez
as a backend, since it does low level optimizations very well.
Universities and research institutions could affort the licence fees.
-Vilhelm