SISC 1.9.4 Released

New in this Release

This is the first stable release in the 1.9 series. It contains numerous enhancements to both the engine and library.

  • The engine now uses a flat closure representation supported by a referenced variable analysis pass which makes SISC "safe-for-space" for most programs.
  • I/O is now based on generic procedures, allowing extensibility from Scheme and Java.
  • Support for trapping OS signals.
  • Support for breaking evaluation at the REPL with Control-C.
  • Support for a form of primitive inlining when directed, lending a 2x increase in speed.
  • Added a call to retrieve the exports of a module as a list.
  • Support for the latest SRFI 45.
  • Added the "os" module, which facilitates spawning and interacting with external processes.
  • Immutability of sublists in quasiquote expressions now preserved.
  • Better handling of infinites and NaN values in the numeric library.
  • Serialization of Scheme values is now differential against loaded libraries, resulting in smaller serialized forms.
  • Better error reporting from nested loads and from the reader.
  • Numerous bug fixes.

About SISC

SISC is an extensible heap-based interpreter of Scheme running on the Java VM, with an aggressively optimized, lightweight (<200k) Scheme engine. SISC 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 many useful real-world extensions, such as networking, threading, elegant exception handling, generic procedures, an object system, SLIB and comprehensive SRFI support, a scope-friendly module system, a Scheme and Java object system with a clean foreign-function interface and more.

Downloads and More Information

Source code, binaries, and SISC documentation can be found on the web at:

http://sisc.sourceforge.net

Licensing

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 GPL.