This project is read-only.

1.0 Beta 2

Rating: No reviews yet
Downloads: 562
Released: Feb 1, 2009
Updated: Feb 1, 2009 by leppie
Dev status: Beta Help Icon

Recommended Download

Application IronScheme-1.0-beta2-setup.exe
application, 977K, uploaded Feb 1, 2009 - 346 downloads

Other Available Downloads

application, 1221K, uploaded Feb 1, 2009 - 216 downloads

Release Notes

Release notes for IronScheme 1.0 Beta 2

What is IronScheme?

IronScheme will aim to be a conforming R6RS Scheme implementation on the Microsoft DLR.
IronScheme provides 2 run modes: either via direct invocation on the commandline or via a REPL interactive environment.
With 1.0 beta 2, IronScheme implements the entire R6RS Scheme standard, and only fail 8 of 8871 tests in the PLT R6RS test suite.
IronScheme runs on MS .NET and Mono. Unfortunately, it does not seem to work under 64bit on Mono. MS 64 bit has not been tested either.

Notably lacking for R6RS

  • call/cc only supports escape continuations, trying to re-invoke a continuation will result in an error
  • during development of beta 2, I made a CPS version, but is too slow to be useful currently, this will be addressed in IronScheme 2.0


  • all raise's are continuable in the sense they can be caught (this is also addressed with the CPS version)


  • a generic load procedure for toplevel R6RS files
  • many extras procedures and macros in (ironscheme) library, mostly provided by psyntax
  • syntactic CLR integration, automatic conversion of closures into delegates


  • Abdulaziz Ghuloum and Kent Dybvig for psyntax (and friends)
  • Derick Eddington for making SRFI-1 R6RS compatible
  • Philip L. Bewig for SRFI-41
  • Marc Feeley for pretty-print
  • anyone else I missed

Planned to-do's (before final release)

  • testing of anything else
  • any additional CLR integration required
  • documentation

Updated (fixed/new)

  • Added a new LINQ library (ironscheme linq2) which implements all methods found under System.Linq.Enumerable. The new version also uses deferred execution
  • Added a few more libraries
  • Added (ironscheme unsafe) library
  • Many bug fixes
  • Added P/Invoke functionality, and a small FFI layer
  • Many compiler optimizations added (TCE, lambda body hoisting, assignment elimination), more coming for beta 3!
  • Rewrote fixnums and flonums in Scheme. Uses unsafe features.
  • Memory optimizations (previous versions had many objects that could not be GC'd), much less GC's needed now
  • See 'Source Code' page for more details

Downloads below:

The zip is just a snapshot of the installation directory, it can be put anywhere.

Reviews for this release

No reviews yet for this release.