Lambda the Ultimate

inactiveTopic SISC 1.4.0 Released
started 5/1/2002; 5:53:53 PM - last post 5/1/2002; 5:53:53 PM
Scott G. Miller - SISC 1.4.0 Released  blueArrow
5/1/2002; 5:53:53 PM (reads: 251, responses: 0)
New in this Release

r1.4.0 adds several major enhancements. SISC now supports generic procedures, on top of which is built the Scheme to Java (S2J) bridge module. This allows seamless access to Java libraries and the ability to call into Scheme from Java.

Multithreading capabilities have stabilized, allowing thread-safe execution of distinct Scheme code as well as concurrent execution of code protected by the threading libraries concurrency primitives.

Networking code (which has been present since 1.3.x) is now documented. SISC provides access to a full IP networking stack, accessed via ordinary Scheme ports. The API provides access to TCP, UDP, and Multicast-UDP protocols.

Source annotations is new as well, which (when enabled) tracks source-file position information through the expansion and compile stages, allowing for call-traces of code in the event of an error with line and column numbers. This is the most visible addition to the debugging interface, which supports active (source-code modification required) and passive (automatic) debugging.

SLIB support and many SRFIs are also included. SISC supports SRFIs 0, 1, 2, 5, 6, 7, 8, 9, 11, 12, 13, 14, 16, 23, and 24.

Finally, SISC accepts URLs in any I/O function that previously accepted files as arguments.

Official Documentation

"SISC for Seasoned Schemers", the official SISC user manual has emerged from draft status and is now available on the SISC website. Initially browseable in HTML format, PDF and Postscript versions will appear in the future. The 70 page manual covers all SISC specific libraries and constructs.

About SISC

SISC is an extensible heap-based interpreter of Scheme running on the Java VM, with an aggressively optimized, lightweight (<100k) Scheme engine. SISC handily outperforms all existing Java interpreters (often by more than an order of magnitude).

In addition, SISC is a complete implementation of the language. The entire R5RS Scheme standard is supported, no exceptions. This includes a full number tower including complex number support, arbitrary precision integers and floating point numbers, as well as hygienic R5RS macros, proper tail recursion, and first-class continuations (not just the escaping continuations as in many limited Scheme systems). SISC also attempts to implement the standard as correctly as possible, while still providing exceptional performance.

Finally, SISC provides useful real-world extensions, such as networking, elegant exception handling, a scope-friendly module system, and a Java foreign-function interface.

Downloads and More Information

Source code and binaries, a comparison of Java Scheme systems, and SISC documentation can be found on the web at:


SISC is Free Software. It is released simultaneously under the GNU General Public License (for free-software projects), and the Mozilla Public License (for commercial entities). The documentation is available under the GNU Free Documentation License.