From: Matthew Flatt <mflatt@cs.utah.edu> To: plt-scheme@fast.cs.utah.edu Date: Sat, 22 Sep 2001 21:46:45 -0600 (MDT) Subject: 199.23 The exp-tagged code in CVS for MzScheme and MrEd is now version 199.23. The changes are fairly obscure: * Changed the first argument of `raise-syntax-error’ so that syntax objects are not allowed, but a more general specification is supported. Also changed the calculation of the form name for the error message, and the values of the `form’ and `module’ fields of the `exn:syntax’ exception structure. The `module’ field now can be a module path index (or symbol or #f). The consequences are: - `raise-syntax-error’ should almost always be called with a #f argument. - the third argument should be supplied almost always, and it should be the source form whose transformer is reporting the error. - assuming guidelines such as the above are followed, the form name and module in an exn:syntax exception indicate the source of the transformer from the programmer’s perspective; thus, the exception information is reliable for finding relevant documentation. * Added `namespace-require/copy’, which is like `namespace-require’ except that new top-level variables are created in the namespace for the module’s exported values. This function is useful for creating namespaces, such as the initial one in MzScheme, with a traditional semantics for redefitions of built-in names. * Fixed `module’ to gracefully handle definitions where the name is an uninterned symbol (so that the name is hidden). * Fixed miscellaneous bugs related to syntax. * X: mouse wheel events are now reported to `on-char’. Matthew