From: Matthew Flatt <mflatt@cs.utah.edu>
Subject: v299.3
Date: Mon, 15 Mar 2004 16:38:07 -0700

The v299-tagged code in CVS is now 299.3.

This version introduces the new, streamlined exception hierarchy (see
below), so even if you code ran in 299.2, it probably doesn’t run in
299.3. The main guideline for conversion is that you should use
`exn:fail?’ instead of `exn-not-break?’ in `with-handlers’.

This version also introduces per-type, construct-time field guards for
structures. See the docs on `make-struct-type’ for more information.

Makeshift docs:

 http://www.cs.utah.edu/~mflatt/tmp/mzscheme-doc.plt
 http://www.cs.utah.edu/~mflatt/tmp/mred-doc.plt

Matthew

----------------------------------------

Structs:

  exn  - message continuation-marks
    exn:fail
      exn:fail:contract
        exn:fail:contract:arity
        exn:fail:contract:divide-by-zero
        exn:fail:contract:continuation
        exn:fail:contract:variable  - id
      exn:fail:syntax  - exprs
      exn:fail:read  - sources
        exn:fail:read:eof
        exn:fail:read:non-char
      exn:fail:filesystem
        exn:fail:filesystem:exists
        exn:fail:filesystem:version
      exn:fail:network
      exn:fail:out-of-memory
      exn:fail:unsupported
    exn:break  - continuation

  special-comment  - width
  ; Note: not exn:special-comment, because it doesn’t need
  ;  a message or marks

Properties:

 exn:srclocs  - accessor