[R6RS] revised draft of record srfi

Michael Sperber sperber
Wed Aug 3 16:08:51 EDT 2005

William D Clinger <will at ccs.neu.edu> writes:

> I didn't realize the record? predicate would return true even
> for opaque records.  One way to solve the problem would be to
> make the record? predicate return false for opaque records.
> I would favor that change.

I'll make that change with the next revision.

> I see you solved the problem by leaving the behavior of equal?
> unspecified on records, except for eq? implying equal?.  Another
> way to solve the problem is to say that equal? behaves the same
> as eq? on records created by the constructor for a non-opaque
> record type, and to leave the behavior of equal? unspecified
> only for opaque records.

(Picking nits here.)  This means that all types that EQUAL? treats
specially must be opaque, right?  I don't see why this implication is

I'd just want to say something along the lines of: EQ? = EQUAL? for
all record types defined by a user program.  R6RS-builtin types such
as pairs, strings, vectors might be implemented as records.  Special
rules may apply; check the definition of EQUAL? once it's out.

Cheers =8-} Mike
Friede, V?lkerverst?ndigung und ?berhaupt blabla

More information about the R6RS mailing list