This document outlines the changes made to Chez Scheme for Version 7.0a since Version 7.0.
Version 7.0a is available for the following platforms:
This document contains three sections describing significant (1) functionality changes, (2) bugs fixed, and (3) performance enhancements. A version number listed in parentheses in the header for a change indicates the first minor release or internal prerelease to support the change.
More information on Chez Scheme and Petite Chez Scheme can be found at http://www.scheme.com, and extensive documentation is available in The Scheme Programming Language, 3rd edition and the Chez Scheme Version 7 User's Guide.
Support for foreign-callable in Version 7.0 and prior releases was limited to the Intel Windows and Linux environments (threaded and nonthreaded). foreign-callable is now supported for the threaded and nonthreaded Solaris (32- and 64 bit) and PowerPC MacOS X.
The existing command-line-arguments parameter is set to a list of the command-line arguments by the default value of the scheme-script parameter whenever a Scheme shell script is run. The new command-line is similar, but is set to include as well the name of the script as the first element. Thus, (car (command-line)) can be used to determine the script, and (cdr (command-line)) can be used to determine the command-line arguments.
The socket example found in examples/socket.ss in the release directory has been made more robust. The updated code also appears in the Chez Scheme Version 7 User's Guide.
A bug in the optimizer's treatment of logtest, logbit?, fxlogtest, and fxlogbit?, which caused it to treat their return values as always true in test contexts, has been fixed. [This bug dated back to Version 6.9d.]
A bug that caused format to reject exact real numbers has been fixed, and format also now produces a more appropriate error message when passed a non-real number. [This bug dated back to Version 6.9b.]
The thread? procedure, like other threading procedures, is no longer defined in the nonthreaded versions of the system. [This bug dated back to Version 6.5.]
The speed of a call into Scheme via foreign-callable has been improved slightly for nonthreaded versions of the system. The difference is likely to be noticeable only for calls to Scheme procedures that execute quickly.