[racket-dev] racket2 suggestion: removing (or extending) eqv?

From: Jon Zeppieri (zeppieri at gmail.com)
Date: Sat May 4 11:57:21 EDT 2013

Since incompatible future changes seem to be coming up a lot, I
thought I'd add one more. What do the members of this list think of
removing eqv? all of its associated machinery (e.g., memv, hasheqv,
etc.)?

(Along with this change, it would be nice if characters could all be
immediately represented, so that those with equal code points would be
eq? RIght now, all unicode code points can be encoded in 22 bits, I
think. I'm not so familiar with racket's current representation of
characters, but I figure that they could easily be fit into a single
machine word on 64-bit builds. I don't know how difficult it would be
on 32-bit builds. And, of course, there's no guarantee that the number
of code points won't increase significantly.)

Alternatively (and following Sam's line of thought from [1]), eqv?
could be extended to cover all of racket's immutable data structures.
In this case eqv? should also be made generic so that user-defined
immutable data structures can use it, as well.


[1] http://lists.racket-lang.org/users/archive/2013-April/057510.html

Posted on the dev mailing list.