[r6rs-discuss] Case sensitivity
eli at barzilay.org
Tue Feb 24 00:20:05 EST 2009
On Feb 23, Guillermo J. Rozas wrote:
> On Feb 23, 2009, at 2:39 PM, Eli Barzilay wrote:
> > No you didn't; and I did re-read prior messages, again. There was
> > a "Why aren't you using strings?" question, and there was a vague
> > mention of "generators" which "report any collisions".
> > If there's any shred of utility in this thread, then this is it.
> > I *would* like to know -- in concrete terms -- how to face
> > foreign-code from a case insensitive language. One of the
> > scenarios I outlined is:
> > * Write an interface to a library that has "foo" "Bar"
> > * ... which a year later gets extended by a "FOO"
> > You suggest "generators" -- you didn't specify what they do, are
> > they macros or some code-genarating preprocessors, and most
> > importantly, how will such a collision be reported, and how does
> > it get fixed.
> "generator" = "code-generating preprocessor"
> And why would I do that? Because, presumably, I don't want to re-
> type the definitions of the library that are already included in a
> .h file, and I'd rather write a tool that can be used and re-used as
> the .h file changes, than have to fix things by hand.
(That is a perfectly fine job for a macro, BTW.)
> As part of that pre-processing, it would examine all the
> identifiers, and report any conflicts.
> I doubt that there would be many if at all.
So in the case I describe above, it will break...
> And since pre-processing time is prior to actual use, I have plenty
> of time to handle any conflicts.
...requiring manual intervention. Even if you manage to specify sane
translation rules, you still need to choose those rules manually, and
you'll still need to inflict that pain on the people who need to cross
reference your bindings with the foreign documentation. IOW, nothing
> >> But you generalized it to 'most users'.
> > Yes, I should have added an obligatory ([*] based on a
> > self-selected sample of Scheme users who chose to participate in
> > the r6rs mailing list.)
> A perfect example of sample bias.
What bias? This was a question on this mailing list, period. Of
course it's self-selected -- schemers are not required to be on this
mailing list, or to read posts. (I certainly hope most of them
exercise this right wrt this miserable thread.) None of that was
hidden in any way in the post I pointed to, and in case you didn't get
it, the starred parenthesised comment above was cynicism, it should
have been obvious for anyone.
Yes, it just might have been that most of the masses of the
case-insensitive schemers were sleeping at the time, as well as in the
other polls mentioned in that email. It might have been posted at a
certain phase of the moon when case-insensitive groupies spend most of
the day lethargically sleeping, and the case-sensitive groupies are
high on caffeine. And yes, no statistician was hired to estimate the
results. All of this means that such a disclaimer is relevant. Look
at that post again, the last two paragraphs do that.
((lambda (x) (x x)) (lambda (x) (x x))) Eli Barzilay:
http://www.barzilay.org/ Maze is Life!
More information about the r6rs-discuss