From: Matthew Flatt <mflatt@cs.utah.edu> To: plt-scheme@list.cs.brown.edu Date: Fri, 29 Aug 2003 06:26:44 -0700 Subject: [plt-scheme] 205.1 The exp-tagged code in CVS for MzScheme and MrEd is now version 205.1. Changes: * Fixed transitivity of numerical comparison for mixed inexact--exact comparisons when the inexact versions of the numbers are = and the exact versions are not. > (= 1237940039285380274899124223 1.2379400392853803e+27 1237940039285380274899124225) #f ;; used to be #t * `generate-temporaries’ produces identifiers that are suitable for use as defined names in the module being expanded (if any). For example, this `silly’ macro will work as expected in any definition context, including the top level of a module: (define-syntax (silly stx) (syntax-case stx () [(_ expr) (with-syntax ([(id) (generate-temporaries ’(id))]) #’(begin (define id exprs) id))])) Leaving out the `with-syntax’ wouldn’t work if `silly’ is defined in a module and used in a different module, because `id’ would have the defining module’s context (making it unsuitable for a LHS elsewhere). Also, the above didn’t work in v205 because `id’ would have no context at all. The `generate-temporaries’ implementation uses a new `syntax-local-module-introduce’ procedure (see the docs). * Non-constant syntax pairs generated from templates (in `syntax-case’, `with-syntax’, `quasisyntax’, etc.) now keep the source-location and context information of the template-part source, instead of acquiring the context and location of the overall template expression. * X, probably only Xsun, and probably only in the engineeering lab at Utah: If the root window’s depth is less than 24, but a 24-bit TrueColor visual is available, MrEd uses the 24-bit visual for its windows and bitmaps. Matthew