[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Proposal for exception handling

|   Date: Fri, 15 Sep 1995 03:41-0400
|   From: kmp@harlequin.com
|   Scheme should definitely provide a way to define new opaque types.

I disagree strongly.  See below.

|			       Not-Quite-Proposal
|   Since I *have* been through it more than once now and since I *do* have an
|   idea of what I want, here's a list of what I'd like to see in a condition
|   system.  This is very rough and is not a formal proposal.  It also omits
|   most of the useful syntax I'd want to add (other than ignore-errors) and
|   focuses on primitive functionality.  I don't have time to spend doing a
|   full proposal, but I hope someone will at least ponder whether someone
|   else should find the time.  I'd be happy to review any such proposal.
|    (make-condition kind ...data...)
|      Some mechanism for making an object of an opaque type that is possible
|      to (a) recognize as a condition, (b) inspect data within, and (c)
|      perform other services common to all conditions.

This is not an opaque type!  It can be inspected!  It is a _unique_
new type (distinguishable from all others), but not opaque.

I'm very much in favor of the creation of new unique types, but I
don't believe in opaque types at all.  They prevent me from writing
pretty-printers, debuggers, general parsers, etc.