[Edu-sig] On case sensitivity

Jim Harrison jhrsn@pop.pitt.edu
Fri, 04 Feb 2000 13:00:54 -0500

on 2/4/00 12:15 PM, Kirby Urner at pdx4d@teleport.com wrote:

> If case sensitivity is a big problem for non-CS
> Alice programmers, my first response would be
> to front load the intro with plenty of warnings
> to students that they'll likely introduce bugs
> by forgetting about such sensitivity.  But I
> wouldn't make the sensistivity go away necessarily,
> as this would encourage laziness and bad habits.

Though I have no objective evidence to show, I would guess that one of the
main problems with case stems from Python's ability to create variables
on-the-fly (without declarations). If variables are required to be declared
up front, most case errors involving variable names would be caught
immediately as syntax errors and fixed. In Python, a case error in an
assignment statement would create a new variable with a new name. This would
yield a logical error with unpredictable results that might be very
difficult for a beginner to track down. I can imagine a novice staring at
the code for a long time without seeing the problem in a situation like
this. One such episode, and I'd tell my teacher that the main problem with
Python is case sensitivity.

It would be interesting to see whether the case errors that make an
impression on beginners are the ones that yield immediately identifiable and
fixable syntax errors, or the ones that yield logical errors.

That being said, I vote for Guido's approach of handling this in the IDE as
an optional feature.

Jim Harrison
Univ. of Pittsburgh