scheme as a virtual machine – II

Closing a TODO, I’ve filtered the list of Scheme implementations to find candidates for experimenting with using Scheme as a VM. The winners are:

Chicken
CPSCM (suprise, surprise, I’ve never heard of it)
Gambit

I expect that I’ll have to choose between Chicken and Gambit, but right now the winner is CPSCM. I expect it allows a fast start, especially because it already compiles Scheme to JavaScript.

Now description of the filtering process.

The page http://community.schemewiki.org/?scheme-faq-standards#implementations provides a list of all Scheme implementations. I followed each link to find if a tool is a compiler or an interpreter. I got:

Bigloo
Chez Scheme
Chicken
CPSCM
Dream
Gambit
Ikarus
Kawa
Larceny
Luna
MIT/GNU Scheme
PLT Scheme
Rhizome/pi
RScheme
Scheme-to-C
Schlep
SCM
Shoe
Stalin

The next filtering step is to search in Google for the phrases “virtual machine site:xxx” and “backend site:xxx”, where xxx is the homepage of the tool. If something is found, the tool is retained in the list. Now the list is shorter:

Bigloo
chicken
CPSCM
Gambit
Ikarus(?)
PLT Scheme(?)
RScheme

The list is finally small. On the last step, I reviewed the documentation of the tools to find that they really support r5rs and real compilation and that the documentation is helpful for my goals. This way, I’ve got the 3 winners listed in the beginning.

Leave a Reply