Release notes for version 0.54.
Bignums are now handled in C using code borrowed from MITScheme (thanks to Martin Gasbichler for getting this working and to the MIT Scheme folks for the code).
Many of the POSIX functions can now be called from Scheme; see the relevant chapter in the manual for more information.
- Additions
-
Set
andunset
commands for modifying switch values. The following commands are now obsolete (but still work):batch
,bench
,break-on-warnings
,form-preferred
, andlevels
. - Support for some SRFIs.
- Support for some POSIX functionality.
- A functional interface to POSIX regular expression matching.
-
Iterate
andreduce
macros for writing loops. -
Modify
added to the module language for interface mangling. - A letrec-closure opcode for
letrec
's when using flat environments. -
Output-port-ready?
in structurei/o
is achar-ready?
equivalent for output ports. - Much of the documentation is now in a single manual (doc/manual.ps or doc/html/manual.html).
-
- Deletions
- Removed files
misc/syscall.scm
andmisc/getenv.scm
. Use the POSIX calls instead. - Removed the .notify rule which sent mail back to us when Scheme 48 was installed.
- Removed files
- Changes
- Bignums are now handled in C code borrowed from MITScheme (thanks to Martin Gasbichler).
- Replaced
,levels i
with,reset i
and added,resume i
. - The command interpreter loads
,open
ed packages without asking first. Do,set ask-before-loading
to get the old behavior. - The command interpreter no longer prints out the names of files
and modules being loaded. Do
,unset load-silently
to get the old behavior. - The command interpreter has changed in a number of other ways. See the manual.
- Changed
misc/either.scm
to use fluid variables and replaced(init)
with(with-nondeterminism thunk)
. Moved the sources tobig/either.scm
and the structure definition tomore-packages.scm
. - Moved the programming-environment packages out of
more-packages.scm
and intoenv-packages.scm
.more-packages.scm
was getting too large. - Modified the
opt/analyzer.scm
code to getcadr
to inline. - The last-resort condition handler now uses
debug-message
to print, the hope that it will be more robust this way. The message is a bit more wordy as well. -
Char-ready?
no longer causes any characters to be read from OS ports.
- Bug fixes
- The flat-environment optimizer can now handle large environments.
- Removed command-interpreter's saved focus values from the stack to keep them from being captured by call/cc.
- The code in
misc/pipe.scm
works again. - Renamed variable
errno
inc/unix/misc.c
to something that does not conflict with glibc. - Fixed
(lambda () (define x 1) (define y 2))
bug. - Added Mike Sperber's more general
alt
code. - Fixed definition of
S48_SET_CAR()
and friends inc/scheme48.h
. - Added
EINTR
checks to more of the system calls. - Made macro-defining
syntax-rules
macros work.