Created
April 16, 2011 02:33
-
-
Save tizoc/922797 to your computer and use it in GitHub Desktop.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
| * Modules have been added as a new program structure to improve | |
| encapsulation and sharing of code. Some existing and new | |
| identifiers have been factored out into separate modules. | |
| * Exceptions can now be signalled explicitly with raise, | |
| raise-continuable or error, and can be handled with | |
| with-exception-handler and the guard syntax. | |
| * New disjoint types supporting access to multiple fields can be | |
| generated with define-record-type. | |
| * Parameter objects can be created with make-parameter, and | |
| dynamically rebound with parameterize. | |
| * Blobs, homogeneous vectors of integers in the range [0..255], | |
| have been added as a new disjoint type. | |
| * Ports can now be designated as binary or character ports, with | |
| new procedures for reading and writing binary data. | |
| * String ports have been added as a way to write characters to | |
| and read characters from strings. | |
| * Current-input-port and current-output-port are now parameter | |
| objects, along with the newly introduced current-error-port. | |
| * Syntax-rules now recognizes as a wildcard, allows the ellipsis | |
| symbol to be specified explicitly instead of the default ..., | |
| allows template escapes with an ellipsis-prefixed list, and | |
| allows tail patterns to follow an ellipsis pattern. | |
| * Syntax-error has been added as a way to signal immediate and | |
| more informative errors when a form is expanded. | |
| * Internal define-syntax forms are now allowed preceding any | |
| internal defines. | |
| * Letrec* has been added, and internal define specified in terms | |
| of it. | |
| * Case now supports a => syntax analagous to cond. | |
| * Case-lambda has been added to the base library as a way to | |
| dispatch on the number of arguments passed to a procedure. | |
| * Positive and negative infinity and a NaN object have been added | |
| to the numeric tower as inexact values with the written | |
| representations +inf.0, -inf.0 and +nan.0, respectively. | |
| * Map and for-each are now required to terminate on the shortest | |
| list when inputs have different length. | |
| * Member and assoc now take an optional third argument for the | |
| equality predicate to use. | |
| * Exact-integer? and exact-integer-sqrt have been added. | |
| * Make-list, copy-list, list-set!, string-map, string-for-each, | |
| string->vector, copy-vector, vector-map, vector-for-each, and | |
| vector->string have been added to round out the sequence | |
| operations. | |
| * The set of characters used is required to be consistent with | |
| the latest Unicode standard only in so far as the | |
| implementation supports Unicode. | |
| * string-ni=? and related procedures have been added to compare | |
| strings as though they had gone through an | |
| implementation-defined normalization, without exposing the | |
| normalization. | |
| * The case-folding behavior of the reader can now be explicitly | |
| controlled, with no folding as the default. | |
| * The reader now recognizes the new comment syntax #; to skip the | |
| next datum, and allows nested block comments with #| ... |#. | |
| * Data prefixed with reader labels #<n>= can be referenced with | |
| #<n># allowing for reading and writing of data with shared | |
| structure. | |
| * Strings and symbols now allow mnemonic and numeric escape | |
| sequences, and the list of named characters has been extended. | |
| * File-exists? and delete-file are available in the (scheme file) | |
| module. | |
| * An interface to the system environment and command line is | |
| available in the (scheme process-context) module. | |
| * Procedures for accessing the current time are available in | |
| the (scheme time) module. | |
| * A complete set of integer division operators is available in | |
| the (scheme division) module. | |
| * Transcript-on and transcript-off have been removed. |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment