A Scheme interpretter written in Java that uses some compiler-style optimizations for better performance than straightforward interpretters. Originally started in 1996 as a project to learn Java programming, BDC Scheme was used as an extension language in a commercial product starting in 1997. Previous to open source release in 2002 it was written up as part of an a MIT MEng thesis in 2000 where it was referred to as Script. The thesis covers the history of the implementation and benchmarks the performance relative to a variety of other Scheme implementations, both Java and non-Java based such as Kawa, Silk, Skij, Scheme 48, MIT Scheme. Both Sun and IBM are used in the comparison.
Sixx is an interactive Lisp implementation in a 20KB jar file. It only requires JRE 1.1 making it suitable for applets. It supports a subset of Scheme (a lot of R4RS, R5RS and aims for some R6RS) including call/cc, but not hygienic macros (yet) or syntax-case. It is simple to call Java from Scheme and Scheme from Java.
SISC – Second Interpreter of Scheme Code is an extensible Java based interpreter of the algorithmic language Scheme. The entire R5RS Scheme standard is supported. Native functionality can be added through the use of Modules, extensions that may add new types, values, and functions to the language.
The UncommonLisp Interpreter contains a functionally complete set of Lisp primitives in less than two thousand lines of Java. It delegates the implementation of higher level Lisp functions to Lisp itself, thereby bootstrapping the interpreter to implement some of its own functionality.
uts, the Useless Toy Scheme is a Scheme bytecode interpreter. It’s almost fully R4RS-compliant but otherwise minimal. It needs the Boehm garbage collector to run. In an earlier incarnation this was known as Plonk; there is an all-Scheme version, and a Java implementation of the bytecode interpreter part. It’s known to not work right with JDK 1.1, and it will not be developed any further.