Scheme 9 from Empty Space

S9fES is a mature, portable, and comprehensible interpreter for R4RS Scheme. The core interpreter is written in pure ANSI C (C89), so it runs on all platforms offering a C compiler. It can even be compiled natively on Plan 9. On Unix-based systems (or MinGW), it also offers an interface to common Unix system calls and Curses routines.

The interpreter is built around a toolkit called S9core (PDF), which contains some basic building blocks for dynamic languages, such as a garbage collected heap, bignum arithmetics, etc. (The toolkit is included in the S9fES tarball).

S9fES has been developed using EDOC, a literate programming tool. The rendered EDOC source code to a previous version is available in print and PDF form. The C and Scheme code stripped from the EDOC files is in the public domain, though, and can be downloaded here (~600KB).

The interpreter is explained in detail in the Scheme 9 Book!

The S9fES Distribution Archive

total 1476
-rw-r--r--  1 nmh  nmh    1017 Oct  3   2012 ABOUT
-rw-r--r--  1 nmh  nmh   20718 Nov 19  21:53 CATEGORIES.html
-rw-r--r--  1 nmh  nmh   80863 Nov 19  21:51 CHANGES
-rw-r--r--  1 nmh  nmh    1111 Mar 10   2015 LICENSE
-rw-r--r--  1 nmh  nmh    8659 Jul 14  10:36 MASCOT.png
-rw-r--r--  1 nmh  nmh    7813 Nov 19  21:51 Makefile
-rw-r--r--  1 nmh  nmh    7432 Jul  6  08:56 README
-rw-r--r--  1 nmh  nmh    1519 Jun 15  10:22 README.s9core
-rw-r--r--  1 nmh  nmh      73 Nov 19  21:49 TODO
-rw-r--r--  1 nmh  nmh   17143 Nov 19  21:53 _csums
-rw-r--r--  1 nmh  nmh     624 Mar 31   2015 config.scm
-rwxr-xr-x  1 nmh  nmh     479 Jun 13  14:31 configure
drwxr-xr-x  2 nmh  nmh     512 Nov 16  23:33 contrib
drwxr-xr-x  5 nmh  nmh     512 Jul 12  19:49 ext
drwxr-xr-x  4 nmh  nmh   11776 Nov 16  23:33 help
drwxr-xr-x  2 nmh  nmh    3584 Nov 16  23:33 lib
-rw-r--r--  1 nmh  nmh    1275 Jul 13  20:08 mkfile
drwxr-xr-x  2 nmh  nmh     512 Nov 16  23:33 prog
-rw-r--r--  1 nmh  nmh   15961 Jul  6  22:38 s9.1
-rw-r--r--  1 nmh  nmh   18527 Jul  6  22:48 s9.1.txt
-rw-r--r--  1 nmh  nmh   94627 Nov 19  21:51 s9.c
-rw-r--r--  1 nmh  nmh   35597 Nov 17  14:29 s9.scm
-rw-r--r--  1 nmh  nmh  145862 Nov 19  21:53 s9core-20151119.tgz
-rw-r--r--  1 nmh  nmh   63188 Nov 19  21:37 s9core.c
-rw-r--r--  1 nmh  nmh   12842 Nov 17  14:25 s9core.h
-rw-r--r--  1 nmh  nmh  152318 Nov 19  21:53 s9core.pdf
-rw-r--r--  1 nmh  nmh   77486 Nov 19  21:48 s9core.tr
-rw-r--r--  1 nmh  nmh  610620 Nov 19  21:53 s9fes-20151119.tgz
drwxr-xr-x  2 nmh  nmh    1024 Nov 17  14:32 util

contact