Hacker News new | past | comments | ask | show | jobs | submit login

Why is l and I not aliased? They are easily confused in san-serif fonts.



26 letters + 10 digits - 4 letters lost to aliasing (o, i, s, u) = 32 symbols. Making L and alias would leave them only enough for base 31 unless they dropped one of the other aliases.

Personally, I'd be OK with that. I think U is much less likely to be confused for V, at least in anything not handwritten, than lower-case L is likely to be confused for 1.


Encoders are required by the spec to emit uppercase only for this reason, since L is plenty distinct from 1 (whereas I and 1 can still get mixed up, and therefore the former is an alias for the latter). A bit unfair to uppercase L that it has to be so neglected just because of its lowercase counterpart :)

The original Tcl implementation treated uppercase L and lowercase l separately (i.e. uppercase was standalone and lowercase aliased to 1 like I/i do), but in the process of writing up that documentation site I quickly learned that it ended up just confusing me more than it helped, so I just kept lowercase and uppercase L together and distinct and called it a day, figuring that discouraging lowercase output (while still allowing lowercase input) was a good enough workaround for the lI1 issue.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: