Changes between Version 7 and Version 8 of WG1vsR6RSDiff


Ignore:
Timestamp:
09/23/11 09:49:50 (6 years ago)
Author:
cowan
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • WG1vsR6RSDiff

    v7 v8  
    1616 
    1717In addition, the syntax of the module system was deliberately chosen 
    18 to be syntactically different from R6RS, using `module` instead of 
     18to be syntactically different from R6RS, using `define-library` instead of 
    1919`library` and putting an extra level of indirection around the body, 
    2020for the following reasons: 
    2121 
    22   * Allow easy disambiguation between R6RS and R7RS modules. 
     22  * Allows easy disambiguation between R6RS and R7RS modules. 
    2323 
    24   * Make it easier to `include` separate files, optionally with the 
     24  * Makes it easier to `include` separate files, optionally with the 
    2525    `include-ci` form to case-insensitive files. 
    2626 
    27   * Provide the `cond-expand` form from SRFI 0, allowing for a more 
     27  * Provides the `cond-expand` form from SRFI 0, allowing for a more 
    2828    deterministic alternative to the R6RS ".impl.sls" file naming 
    2929    convention. 
    3030 
    31   * Allow room for extensibility.  The R6RS syntax provides two 
     31  * Allows room for extensibility.  The R6RS syntax provides two 
    3232    positional forms which must be present and must have the correct 
    3333    keywords, `export` and `import`, which does not allow for 
     
    7777 
    7878The full numeric tower is optional as in R5RS, but support for IEEE 
    79 infinities and NaN were adopted from R6RS.  Most clarifications on 
     79infinities, NaN, and -0.0 were adopted from R6RS.  Most clarifications on 
    8080numeric results were also adopted, but the new procedures 
    8181`real-valued?`, `rational-valued?`, and `integer-valued?` were not. 
     
    8585 
    8686The division operators `div`, `mod`, `div-and-mod`, `div0`, `mod0` and 
    87 `div-and-mod0` have been replaced with a full set of 15 operators 
    88 describing 5 rounding semantics. 
     87`div-and-mod0` have been replaced with a full set of 18 operators 
     88describing 6 rounding semantics. 
    8989 
    9090When a result is unspecified, it is still required to be a 
     
    174174interest of thread-safety and conflicting behavior among existing 
    175175implementations left the semantics of mutating a parameter (passing it 
    176 an argument) unspecified.  Parameters in the small language are 
     176an argument) unspecified.  Parameters in the small language can be 
    177177altered only with the `parameterize` form. 
    178178 
    179 `equal?` is required to always terminate. 
     179`equal?` is required to always terminate, and to be true if `eqv?` is true.