[R6RS] non-opaque record equality

Michael Sperber sperber at informatik.uni-tuebingen.de
Sat Feb 25 06:10:49 EST 2006

Matthew Flatt <mflatt at cs.utah.edu> writes:

> Would it make sense for two records could be `equal?' when 
>  1. they are instances of the same *non-opaque* record type, and 
>  2. their corresponding field values are all `equal?'
> ? This change seems consistent with the SRFI's reflection support on
> non-opaque records.
> I have no strong opinion, but I thought I'd bring it up for a couple of
> reasons: extending `equal?' this way has been convenient in MzScheme,
> and I didn't see any discussion of this possibility in the R6RS or SRFI
> email archives (but there was a lot of discussion specifically about
> equality, and I could easily have overlooked specifics thoughts on
> opacity).

I disagree pretty strongly, after having worked with Common Lisp's
EQUALP (which does essentially the same thing) in a project.  It sure
feels convenient for a while, but there's almost always a bad
awakening.  There was a discussion on this that's archived here:


I wrote a longer position post here:


The Common Lisp issue referenced in the post and in the SRFI has even

Cheers =8-} Mike
Friede, Völkerverständigung und überhaupt blabla

More information about the R6RS mailing list