Concetti
Linguaggi
Linguaggio o linguaggi?
Un luogo comune che va sfatato è che i programmatori passino il tempo a riempire lo schermo di 0 e 1 perché, si sa, i computer sono binari. Davvero?
Intanto: se fosse così, perché avere una tastiera con 80 tasti? Ne basterebbero due,no?
.data var1 DWORD 30000h var2 DWORD 40000h .code move eax,var1 add eax,var2Un'istruzione di alto livello invece assomiglia a "dammi il risultato di 3 + 4". Più corta, più semplice da imparare, meno soggetta ad errori.
Ad esempio, questa è una versione in FORTRAN che chiede due numeri e stampa il risultato della loro somma:
100 READ(5,10) I1, I2 10 FORMAT(3I5) ISUM = I1 + I2 WRITE(6,20) I1, I2, ISUM 20 FORMAT(7HSUM OF , I5, 2H, , I5, 5H AND , I5, * 4H IS , I6) GOTO 100 ENDFonte: http://www.herongyang.com/Computer-History/FORTRAN-Program-Store-on-Punch-Card.html
Il trucco è stato quello di spostare il compito difficile dall'umano al computer (d'altra parte è stato inventato appunto per fare cose difficili, oltre che ripetitive) ovvero insegnare ai computer a leggere i programmi scritti con quei nuovi linguaggi.
Ma non come non c'era un solo tipo di computer, così non bastava un solo tipo di linguaggio. D'altra parte, dopo le prima applicazioni dei computer al calcolo delle traettorie, o alla statistica, si era capito presto che con i computer si potevano fare moltissime cose diverse, e che un solo linguaggio non era per forza adatto a tutte.
Così nacquero linguaggio adatti ai calcoli e linguaggi adatti a trattere parole, linguaggi essenziali che richiedevano mesi di studio e linguaggi prolissi ma usabili anche dai meno esperti.
Ma anche usando lo stesso linguaggio, due programmatori finivano per scrivere codice in maniera diversa. Insieme ai linguaggi sono nati gli stili di programmazione: chi andava di fretta e badava all'essenziale e chi perdeva tempo a scrivere un codice leggibile, equilibrato, elegante. Chi trattava il computer da schiavo efficiente impartendo ordini e chi ci dialogava chiedendo sempre "per favore".
Così è iniziato un processo circolare: ogni nuovo linguaggio permetteva nuovi stili di programmazione, che a loro volta facevano venire in mente idee per nuovi linguaggi. Non tutti utili, anzi alcuni francamente pensati solo per divertimento, come i linguaggi esoterici. Ma anche i linguaggi più assurdi e i programmi più pazzi hanno fatto avanzare la capacità dei programmatori di costruire mondi nuovi e impensati fino a quel momento.
Programmare non è (solo) mettere in sequenza caratteri strani, ma costruire testi complessi, sceneggiature in cui procedure e funzioni entrano in scena come personaggi di una storia.
Prossimo pannello: ⇨ Errori
© Codexpo.org - Content released under Creative Commons 4.0 BY/SA/NC
Versione: 12/01/2022 - 19:23:38
Parole: 296Pannelli
Concetti |
MagiaDigitale |
Programmi |
Codice |
Linguaggi |
Errori |
Esecuzione |
Algoritmi |