[R6RS] R5RS-compliant mode

R. Kent Dybvig dyb
Tue Sep 7 10:39:05 EDT 2004

For Chez Scheme or Petite Chez Scheme, you want the following settings:

  (print-brackets #f)
  (print-vector-length #f)

>   * nonstandard escape characters (e.g. vertical bars) being printed
>     for symbols of mixed case that are created by STRING->SYMBOL

Does R5RS actually specify a printed representation for mixed-case
symbols?  The only way to get Chez Scheme's write procedure to print
mixed-case symbols without escape characters (display already does so)
is to set the case-sensitive parameter to true while printing, e.g.:

  (define write
    (lambda args
      (parameterize ((case-sensitive #t))
        (apply (let () (import scheme) write) args))))

This will print the symbols in mixed case but without escape characters.
If you want all one case, that's a bit more difficult but still doable.

If you want your students to evaluate code in the r5rs environment,
have them download Version 6.9c from www.scheme.com, since prior to
Version 6.9c, some of the c...r variable bindings were left out of the
r5rs environment by mistake.


More information about the R6RS mailing list