I see. On Tue, 2009-02-24 at 15:11 -0500, Andrew Pochinsky wrote: > However, once we have Unicode, the > complexity of staying CI grows tremendously and threatens to result in > a ball-of-hair design.
The call to which I'm responding was the suggestion by a few that It Would Be Nice if Scheme defined mechanisms by means of which both CI and CS environments could be hosted and could share code. If you unpack that request it turns out to touch on a fairly deep, essential question: the concept of "identity" among symbols in mathematical / programmatic notations. The desire, among serious programmers, with real needs for both CI and CS helps to give an example in support of a hypothesis... The hypothesis is that symbol identity doesn't have a single, right answer. "Exact integer 2, self-multiplied, yields exact integer 4." There is no question about that. It follows from the ordinary meanings of "integer" and "multiply". The standard doesn't really arbitrarily exclude anyone - doesn't give us an unnecessary restriction - if we all agree that, in Scheme, two times two is four. "Symbol names are CS" and "Symbol names are CI" is demonstrated, in this thread, not be like 2 * 2. Each is a valid choice, depending on context, and the *consequences* of the choice matters non-trivially in some contexts. So a good question for the standard to pose is "What is the simplest, most general, least restricted thing we can offer that let's people choose CS and CI? or that at least let's implementers choose to give users the option in a way portable among implementations that offer such a choice?" I'll write something quick but separate about the problem with how people regard the standard. > > I suggest that that is more like an EQ? / EQV? > > distinction. > > If you mean that to make some symbols eqv? but not eq?, I find it a > very unappealing change in semantics. But done in the way I suggest it would break no existing code. -t _______________________________________________ r6rs-discuss mailing list [email protected] http://lists.r6rs.org/cgi-bin/mailman/listinfo/r6rs-discuss
