[ESS] Turning off ess-smart-underscore

Richard M. Heiberger rmh at temple.edu
Thu Aug 25 14:57:59 CEST 2005

Michael Hoffman:
I'm glad you like it, but personally I think it is strange and 
surprising to type in one character and get four unrelated characters 
instead. Wouldn't you think it were strange if typing in the other 
non-alphanumeric character used in identifiers, ".", gave you " <<- " 
instead? I sure would.

A bit of history is needed here.  These are NOT unrelated characters.

S was first written on teletype machines which did not have an underscore character.
The corresponding character was the single-character leftarrow.  Using the left
arrow for assignment made good sense.  As equipment evolved and the ASCII alphabet
was invented, the leftarrow was removed from the keyboard and the underscore was
placed in its position.   Underscore as an assignment character makes no sense.
The composite leftarrow "<-" makes sense.  The spacing around the assignment
character " <- " improves legibility (and is therefore strongly recommended).
People whose fingers were trained on the underscore position of the keyboard are
pleased to get legibility without retraining their fingers.

As a secondary benefit, the underscore is an ambiguous character for people who use
other computing languages.  In SAS, and in recent releases of R, the underscore is
an alphabetic character (that is, it can be used in variable names).


More information about the ESS-help mailing list