S9fES is an interpreter for a broad subset of R4RS Scheme. It is written in ANSI C (C89) and Scheme.
The S9fES code strives to be comprehensible rather than fast. It is aimed at people who want to study the implementation of Scheme (in a language other than Scheme).
Latest update: 2007-10-30
The Scheme 9 book discusses the implementation in detail and covers the theory behind the scenes.
Why in earth write another half-baked implementation of
Scheme?
It is better than getting drunk at a bar.
Is S9fES based on any other implementation?
It is loosely based on
Sketchy LISP, but
S9fES is smaller, sometimes faster, and has a simpler implementation model.
How complete is it?
S9fES implements R4RS modulo a few omissions. See the
man page for details.
Why are newer versions only R4RS-compliant?
R4RS Scheme is a decent and elegant language and it is slightly easier
to implement than R5RS Scheme. BTW, the R6RS is an abomination. If you
want Scheme, stick to R4RS or R5RS.
What are its conditions of use?
Don't worry, be happy.
(Hacker
ethic (sense 1) applies.)
Where is it?
Here:
| s9fes.tgz | [~40KB] | latest version: source code, man page, test suite |
| s9fes-book.tgz | [~40KB] | snapshot of the version discussed in the book |
| s9fes-exe.zip | [~35KB] | "EXE file" for the unmentionable horror (may be slightly outdated) |
Copyright (C) 2007 Nils M Holm
<nmh @ t3x . org>
Above artwork is based on the movie "Plan 9 from Outer Space"
and used under the assumption of fair use.