[plt-scheme] R6RS
PLT Scheme v4.0 will support R6RS programs and libraries, and an
"alpha" version of R6RS support is available now in pre-release builds
and via SVN.
See
http://docs.plt-scheme.org/r6rs/index.html
for information on using the `plt-r6rs' executable or the `#!r6rs'
module notation.
We do not plan to add an "R6RS" language to DrScheme. Start an R6RS
program or library with `#!r6rs', and then use DrScheme's "Module"
language.
Problems with this "alpha" version:
1. The test suite is incomplete --- little more than the examples in
R6RS, so far.
2. Syntax and run-time error message are poor in many cases.
Also, although you can use R6RS libraries from `scheme/base' modules
and vice-versa, R6RS pairs are mutable, which means that R6RS libraries
and `scheme/base' have incompatible notions of pairs and lists. We
expect that few R6RS libraries will need `(r6rs mutable-pairs)'
library, directly or transitively, in which case they can be trivially
translated to an "R6RS/i" variant of R6RS with immutable pairs --- and
then interoperate smoothly with PLT Scheme code. We plan to implement
this variant of R6RS and provide a way to translate and install a given
set of R6RS libraries as R6RS/i libraries.
Matthew