Come regola generale, i linguaggi di programmazione sono progettati per essere utilizzati dagli esseri umani, e quindi per l'accesso usando un US-QWERTY tastiera. (Questo rende un certo numero di salti concettuali, io stesso come prova di come sto facendo la maggior parte del lavoro su un BE-AZERTY, ma concedimi e unisciti a me in questo atto di fede.)
Usando le lettere dell'alfabeto per parole e identificatori riservati, ha senso assegnare i diversi caratteri di punteggiatura a una funzione nella lingua che si verificherà con una probabilità in correlazione con la facilità di accesso del segno di punteggiatura. (C'è una storia su trigraph s relativa a questo, ma non pertinente a questa domanda.)
C'è una storia da qualche parte sulla selezione di =
per l'assegnazione e ==
per il confronto a causa dell'economia della memoria, ma non riesco a trovare un indirizzo di collegamento ipertestuale adatto.
Applicare ulteriormente questa teoria alla pratica, con la sintassi del linguaggio C:
- ! per "non"
- " per valori letterali stringa
- # per l'input del compilatore e del preprocessore
La teoria si rompe a $ . Non sembra affatto da alcuna implementazione del linguaggio C, che io sappia. (Inoltre, nessun $
qui .)
Era riservato a qualcosa che non era finito?
Era in uso da qualcosa che da allora è diventato inutilizzabile?
O ha un uso in (alcune) implementazioni che non sono di uso comune?