Case-sensitivity goals, policy and implementation



I think there are exactly two behaviours which can be easily explained to 
users:
1. Everything is case-insensitive.
2. Everything is case-sensitive.
All other variants introduce rules and exceptions from the rules. I hate 
exceptions - they make the rule invalid.

The variant (1) was popular long ago; however, all modern programming 
languages use (2). And I am sure that case-sensitivity is useful - it is 
easier to invent appropriate identifiers for all concepts of the problem, 
without unnecessary complications.

So, I am for absolute case-sensitivity everywhere, without exceptions.
How to implement this in common lisp is a separate question.

Andrey Grozin