Il C come il Latino
BLOG di Paolo Borzini
Ieri stavo comunicando con un gruppo di lavoro per un progetto in cui sono impegnato da quasi due anni. Per stemperare l’atmosfera ho scritto una frase in latino, anche per spolverare un po’ i vecchi ricordi scolastici.
Ovviamente, non conoscendo il latino, l’hanno data in pasto a Google Translator, che più o meno l’ha tradotta correttamente.
Il latino è una lingua semplice e complicata allo stesso tempo. Ed è lì che mi è venuta in mente una domanda, ma se dovessi paragonare il latino a un linguaggio di programmazione, quale sceglierei?
Io sceglierei il C.
Perché il latino è compatto, poche parole, ma ciascuna porta con sé molte informazioni: caso, genere, numero, tempo verbale e via discorrendo. Il C fa qualcosa di simile, poche istruzioni, ma molto significative.
È rigoroso, una declinazione sbagliata può cambiare il senso di una frase, come un ; o un * sbagliato in C può cambiare il comportamento di un programma.
È una lingua fondante, dal latino derivano italiano, francese, spagnolo, portoghese e rumeno; dal C derivano o prendono forte ispirazione C++, Objective-C e moltissimi altri linguaggi.
A questo punto il dado è tratto, e si possono immaginare altri paralleli interessanti.
Se il latino è il C - essenziale, rigoroso, alla base di moltissime evoluzioni.
Allora il greco antico potrebbe essere il Lisp - molto astratto, filosofico, potente ma non immediato.
L’italiano potrebbe essere Python - più leggibile, più naturale, più vicino al modo in cui si raccontano le cose.
L’inglese potrebbe essere JavaScript - oggi è praticamente ovunque.
E infine il sanscrito potrebbe essere Haskell - estremamente formale, con una struttura quasi matematica.
Però ci sarebbe anche un’altra analogia.
Il latino assomiglia, per certi versi, anche all’assembly.
Perché? Perché nel latino ogni desinenza conta. L’ordine delle parole è relativamente libero proprio perché una parte importante del significato è codificata nella forma delle parole. Non è una libertà totale, naturalmente e qui l’ordine serve anche per dare enfasi, ritmo e stile. Ma resta il fatto che ogni dettaglio grammaticale pesa.
È un po’ come scrivere in assembly, dove ogni istruzione è precisa, ogni scelta ha conseguenze, ogni dettaglio conta.
Mi piace pensare che anche Marco Tullio Cicerone avrebbe apprezzato il C, poche parole, nessun fronzolo inutile e una sintassi che, se usata bene, permette di costruire qualsiasi cosa.
Ovviamente, non conoscendo il latino, l’hanno data in pasto a Google Translator, che più o meno l’ha tradotta correttamente.
Il latino è una lingua semplice e complicata allo stesso tempo. Ed è lì che mi è venuta in mente una domanda, ma se dovessi paragonare il latino a un linguaggio di programmazione, quale sceglierei?
Io sceglierei il C.
Perché il latino è compatto, poche parole, ma ciascuna porta con sé molte informazioni: caso, genere, numero, tempo verbale e via discorrendo. Il C fa qualcosa di simile, poche istruzioni, ma molto significative.
È rigoroso, una declinazione sbagliata può cambiare il senso di una frase, come un ; o un * sbagliato in C può cambiare il comportamento di un programma.
È una lingua fondante, dal latino derivano italiano, francese, spagnolo, portoghese e rumeno; dal C derivano o prendono forte ispirazione C++, Objective-C e moltissimi altri linguaggi.
A questo punto il dado è tratto, e si possono immaginare altri paralleli interessanti.
Se il latino è il C - essenziale, rigoroso, alla base di moltissime evoluzioni.
Allora il greco antico potrebbe essere il Lisp - molto astratto, filosofico, potente ma non immediato.
L’italiano potrebbe essere Python - più leggibile, più naturale, più vicino al modo in cui si raccontano le cose.
L’inglese potrebbe essere JavaScript - oggi è praticamente ovunque.
E infine il sanscrito potrebbe essere Haskell - estremamente formale, con una struttura quasi matematica.
Però ci sarebbe anche un’altra analogia.
Il latino assomiglia, per certi versi, anche all’assembly.
Perché? Perché nel latino ogni desinenza conta. L’ordine delle parole è relativamente libero proprio perché una parte importante del significato è codificata nella forma delle parole. Non è una libertà totale, naturalmente e qui l’ordine serve anche per dare enfasi, ritmo e stile. Ma resta il fatto che ogni dettaglio grammaticale pesa.
È un po’ come scrivere in assembly, dove ogni istruzione è precisa, ogni scelta ha conseguenze, ogni dettaglio conta.
Mi piace pensare che anche Marco Tullio Cicerone avrebbe apprezzato il C, poche parole, nessun fronzolo inutile e una sintassi che, se usata bene, permette di costruire qualsiasi cosa.
Paolo Borzini
Commenti
Posta un commento