[r6rs-discuss] Case sensitivity
Guillermo J. Rozas
gjr6765 at gmail.com
Sat Feb 21 22:13:14 EST 2009
On Feb 21, 2009, at 5:38 PM, Eli Barzilay wrote:
> On Feb 21, Guillermo J. Rozas wrote:
>> Would you argue that an italic type face would make the symbol
> I can't argue for Shiro, but I'd definitely argue for a distinct
> symbol if the source file has different bits. But hey, it already
>> (eq? 'foo '<i>foo</i>)
Great. At any rate, I don't mind too much because you had to
escape it up the wazoo.
But I certainly expect
(eq? 'dog 'Dog)
>> I'd rather conform to what ordinary people are used to than what to
>> programmers in other languages are used.
> The "English" and the "what ordinary people are used to" arguments
> only takes this back to the starting point.
I have no idea what you are talking about here.
What starting point?
>>> I thought we were talking where to draw a line in a continuous
>>> spectrum, considering technical merits and disadvantages of
>>> various choices.
>> If RSR6 had been inventing a language from scratch, they could have
>> made an arbitrary choice. I might have liked it or disliked it, but
>> I wasn't involved, so it was their right.
>> But it is called 'Scheme', and that means a tradition worth
>> Case insensitivity is part of that tradition, [...]
> I don't know what turned you on to Scheme (or what made you leave it),
> but for me it definitely was not the fact that it was
Nothing made me leave it. It is still my favorite language.
But I can't use it on an every day basis at work, and I don't have much
time when off work to use it or keep up with it.
The primary purpose of my programming these days is to write models
and specs, and the people who read them write Verilog.
Thus I have to use something that they understand, and I can't retrain
even a subset of them, nor would it be a productive use of my time
And all of us writing such specs should write using a common language
and I'd have a really hard time getting the rest to switch.
I would in a second, though...
>> It's not as if Scheme conforms in most other ways:
>> - prefix notation with parentheses in precise positions (not
>> optional, nor can redundant ones added)
>> - types associated with the contents of variables, and not with the
>> - function calls and recursion as the primary control constructs
>> - etc.
> All of these are good points for Scheme, but completely unrelated to
> the case issue. If you want to be a non-conformist for the sake of
> non-conformism then I'm sure that there is plenty that could be done
> for the language in that direction.
No. The point is that conforming to what other languages do is a very
weak argument for Scheme, as it is _very_ different.
I'm not asking for new 'incompatibilities'. I'm just asking that the
not be changed spuriously. The hurdle should be very high.
>> Conforming in this way seems pointless, and, again, it conforms in
>> ways that programmers in other programming languages expect, not in
>> ways that ordinary users expect.
> So on one hand you argue for case-insensitivity because it's "what
> ordinary people are used to", and on the other you argue about for
> case insensitivity because it doesn't conforms to what "programmers in
> other programming languages expect"?
No. Non-conformism is not a goal. Being different is not a goal.
But being the same is not a goal either. Thus changing because
other programmers expect it is not a goal.
However, for a primarily teaching language, making it easier to teach
to people who don't already program is important.
That's where it is important not to break expectations.
After all, programmers are used to each language having its own
> I take the last part as much
> more important when it comes to identifiers -- their syntax is not
> something that should "leak" out to the end user in any way, so "what
> ordinary people are used to" is a much weaker argument than "what
> ordinary programmers are used to".
What ordinary people are used to is important for a teaching language.
Programmers are far more adaptable.
> On Feb 21, Guillermo J. Rozas wrote:
>> And with respect to () vs. #f, the jury is still out.
> [I'm glad I didn't drink anything hot when I read this.]
You startle easily.
More information about the r6rs-discuss