Tempo di Lettura: 3 minuti
Non so voi, ma quando andavo alle scuole superiori, il primo linguaggio di programmazione che ho imparato seriamente, perché lo usavo spesso nei vari esercizi di Sistemi, è stato il Basic. A dire il vero avevo anche iniziato a programmare in Pascal, ma solitamente era usato solamente per imparare i concetti della programmazione, mentre quando dovevo interfacciare un mio programma con qualche progetto elettronico, il Basic era, all’epoca, lo strumento principe (abbinato alla compilazione con Qbasic 4.5). Alla mia professoressa piaceva spesso asserire che lei aveva deciso di farci programmare in Basic, piuttosto che con il potente C o con il complesso e strutturato Java, in quanto, per i nostri scopi didattici, era abbastanza potente e la sua sintassi poteva essere imparata molto velocemente. Se avessimo, invece, dovuto programmare in C, data la sua complessità intrinseca, avremmo dovuto perdere almeno 1 anno affinché tutti lo potessero padroneggiare. Quindi, la scelta, era ricaduta sul pratico e flessibile Basic, perché, dai tempi del Commodore 64, aveva dalla sua la semplicità di programmazione.
Vi ho narrato questi eventi perché recentemente ho letto un interessante articolo che si chiede se il Python potrai mai essere considerato, prima o poi, il degno sostituto del Basic soprattutto nelle scuole: Python is the new BASIC. Secondo l’autore del post è proprio questo giovane linguaggio di programmazione il candidato perfetto, poiché ha una curva di apprendimento gentile, una sintassi facilmente comprensibile e, fattore da non trascurare, la prima frase che ognuno di noi impara a programmare (HELLO WORLD) si scrive, proprio come in Basic, in una sola riga!
Dovete infatti sapere che questo esercizio è per molti il primo impatto alla programmazione, e più semplice risulta essere, e più facilmente ci si avvicina alla comprensione del linguaggio.
Infatti, se in C dovremmo scrivere:
/* Hello */
int main(void)
{
printf(“Hello, World!”);
return 0;
}
in Java sarebbe:
mentre in Basic è sufficiente scrivere:
e in Python:
Ovviamente il Basic e il Python non sono gli unici linguaggi di programmazione a poter redirigere l’output con una sola riga di comando, ma tra tutti gli altri sono effettivamente tra quelli più potenti e al contempo semplici da imparare.
In realtà, però, Python è anche più potente del Basic, oltre che molto più moderno. Usato da anni da Google e dalla Nasa (e preinstallato in qualsiasi computer con Mac OS X), chi impara a programmare con Python, data la sua scalabilità, può benissimo iniziare semplicemente con un output/input testuale, per poi passare gradualmente ad una programmazione orientata agli oggetti (comunque più semplice e chiara di tanti altri linguaggi), fino ad arrivare ad integrare toolkit GUI come pyglet, pygame, wxPython (non è raro trovare libri che spiegano come programmare i giochi con Python, come “Invent Your Own Computer Games with Python”, distribuito con licenza Creative Commons, che spiega come realizzare giochi in grafica ASCII in meno di 400 righe)
L’autore del post, passa poi in rassegna tutti i più famosi linguaggi di programmazione, dal Visual Basic, PHP, Perl, a Java e Flash, scartandoli tutti per il ruolo di successore del BASIC. Si sofferma però su Ruby, un altro nuovo linguaggio, molto simile a Python e che potrebbe ricadere nella lista dei successori se non fosse che Python ha, almeno per ora, una comunità e una tale vastità di librerie da non essere paragonabile a quella per ora disponibile per Ruby.
Per terminare, vi lascio alla visione di questo simpatico video che mostra la storia del progetto open source Python, dal 1991 quando Guido Van Rossum rilasciò la prima versione del programma ad oggi, riassunto in pochi minuti.
Il video è stato creato grazie al progetto code_swarm di Federated Media, un software che permette di visualizzare in video tutti i cambiamenti e le modifiche che un software Open Source subisce. Se siete curiosi potete dare una occhiata anche alla storia visuale del famoso webserver Apache.
Come effettivamente hai sottolineato, Ruby manca di librerie e comunità per essere un degno erede (ma anche qualcosa in più) del Python
In verità Python ti costringe ad essere semplice. Sei obbligato ad indentare, non hai la libertà di spargere in giro parentesi graffe a casaccio e in molti casi devi per forza programmare ad oggetti.
A proposito di “Hello World!”, hai visto questo sito?? Io l’ho trovato fantastico! 😎