On s7's current eq? function: I think I was following Dybvig's The Scheme Programming Language, second edition, which is based on r4rs (r7rs was just gearing up in early 2008, and I disliked r6rs). I also checked Guile 1.8 which was the last pre-compiler Guile version, I think. Snd was using Guile 1.8 and depended on the interpreter's handling of macros. I started s7 because Guile's decision to become a compiler wrecked Snd, and I couldn't find any other Scheme that was reasonably easy to embed. Dybvig's eq? follows Common Lisp's eq function, saying "eq? #t if obj1 and obj2 are identical", going on to talk about the pointers to them. I think the old eq? is much preferable to the mess that r5rs created. I'm tempted to leave it the way it is, but if others have a strong preference for the current way, I could make s7 treat "eq?" as simply shorthand for "eqv?".
_______________________________________________ Cmdist mailing list Cmdist@ccrma.stanford.edu https://cm-mail.stanford.edu/mailman/listinfo/cmdist