Release notes for IronScheme 1.0 RC 1
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.
IronScheme can also used an embedded scripting library in your .NET programs.
With 1.0 RC 1, IronScheme implements the entire R6RS Scheme standard, and only fail 4 of 8884 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.
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
Differences
- all raise's are continuable in the sense they can be caught (this is also addressed with the CPS version)
Extras
- 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
Credits
- Abdulaziz Ghuloum and Kent Dybvig for psyntax (and friends) (and equal?)
- 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)
- Bug fixes and optimizations
- More CLR interaction features
- Most of the library code is now written in Scheme port from C#
- All CLR interactions require case-sensitive identifiers (possible breaking change)
- Compile-time record generation
- Seperated the CLR and Scheme exception handling system
- Added a few extra SRFI's
- Replaced big number implementation with a faster one
- Added full string case folding
- See 'Source Code' page for more details
Downloads above:
The zip is just a snapshot of the installation directory, it can be put anywhere.