[R6RS] revised draft of record srfi
Michael Sperber
sperber
Mon Aug 1 12:52:24 EDT 2005
A minor point:
William D Clinger <will at ccs.neu.edu> writes:
> 7) Specifying that records created by (record-constructor rtd)
> are equal? if and only if they are eq? is entirely reasonable,
> and is also the simplest thing to do. It does not in any way
> prevent an implementation from using records to represent pairs,
> vectors, strings, and what have you. The implementation has the
> option of using a different record constructor whose existence
> is not even hinted at by this SRFI, or of simply redefining the
> equal? procedure to special-case the types for which the equal?
> procedure should behave differently from eq?.
I'm not sure I follow you here. I think Marc is saying that, if the
R6RS specified that two records are equal? iff they are eq?, it would
disallow this:
(define p1 (cons 1 2))
(define p2 (cons 1 2))
(record? p1) => #t
(record? p2) => #t
(eq? p1 p2) => #f
(equal? p1 p2) => #t
... which we want to permit, I think. (Though not require.)
Your suggestion does nothing to address this, I think. But possibly
I'm misunderstanding one or both of you.
--
Cheers =8-} Mike
Friede, V?lkerverst?ndigung und ?berhaupt blabla
More information about the R6RS
mailing list