← Back to context

Comment by behnamoh

7 hours ago

I wonder why people stopped adding symbols to ASCII. The number row on Macs is just these characters:

    ~!@#$%^&*()_+

And every programming language uses a subset of these. But why these symbols? Why didn't people add more symbols to the keyboard?

Many European layouts do have more symbols outside ASCII. For example German has ° (degree) and ß (ess-tset) and § (paragraph). German PC keyboards also tend to have µ on the M key, but it is available with the right Alt key.

Macintosh keyboard layouts tend to have many symbols on Option-combinations but they are not always printed.

ASCII is a 7-bit code, so there are only so many symbols one can add. Prior to ASCII, you had codes that used as few as 5 bits. Early C had the option to use digraphs to represent various forms of parenthesis, simply because symbols like {} and [] were not universal.

(Strictly speaking, people did continue adding symbols. We used to talk about code pages: when the MSB was 0, the other 7 bits were ASCII. When the MSB was 1, the other 7 bits were a user selected code pade.)

ASCII is 7-bit and fully filled out. Every other extended character system prior to Unicode was sporadically supported. C has digraphs and trigraphs because even the ASCII punctuation wasn't guaranteed to be available on all keyboards. IBM, notably had an APL typeball for their Selectric derived terminals but that was equivalent to switching character sets and not something that could be considered universal prior to Unicode.