|
LOGICA Quando si parla di Logica e di Informatica è d'obbligo risalire ad Alan Turing (1912-1954), l'eccentrico matematico inglese che si interessò delle macchine da calcolo negli anni trenta. Fece i suoi studi al King's College di Cambridge dove si distinse e vi continuò gli studi dopo la laurea. In questo periodo giovanile pubblicò il famoso articolo "On Computable Numbers with an Application to the Entscheidungsproblem" (Sui problemi calcolabili con una applicazione ai problemi di scelta) in cui dimostrava l'esistenza di questioni che non hanno soluzione algoritmica. Oltre a fornire risposte a tematiche di tipo astratto, Turing ebbe il merito di esser sceso in particolari fino allora trascurati. Puntualizzava il concetto di algoritmo e ne dava il modello esecutivo mediante la macchina che porta il suo nome. La macchina di Turing veniva teorizzata nel 1936 cinque anni prima che il primo computer fosse materialmente costruito. Questo vide la luce in Germania nel 1941 ad opera di Zuse ed il lavoro teorico di Turing in qualche misura ne preconizzava la tecnologia.Durante la seconda guerra mondiale Turing cooperava alla costruzione del sistema di decrittazione Colossus. Negli anni cinquanta continuò a fornire una guida ai pionieri della programmazione. Dunque il suo contributo fu straordinario sotto diversi punti di vista. Il sostegno dei logici continuava nei decenni successivi. Essi chiarivano le proprietà dei linguaggi artificiali, definivano alcuni importanti algoritmi, ad esempio di tipo concorrente. Nell'ambito dell'Intelligenza Artificiale varavano ed ampliavano la Programmazione Logica la quale affronta la dimostrazione automatica dei teoremi. Davano un fondamentale contributo al disegno del Prolog e del Lisp. I logici si mettevano in evidenza anche nell'elaborazione del linguaggio naturale, altro significativo filone dell'Intelligenza Artificiale. Di recente hanno sostenuto l'approccio ontologico. Accanto a questi poderosi sviluppi prodotti dai logici nel settore informatico, ricordiamo le note negative che talora oggi emergono nella didattica e nella prassi professionale. Al primo punto ricordiamo proprio la macchina di Turing la quale era positiva negli anni dei pionieri ma oggi è un insufficiente riferimento culturale e didattico. Le componenti del programma, che sono le dichiarative e le strutture, si giustificano convenientemente con la macchina di von Neumann mentre si spiegano assai peggio con Turing. Quel che è peggio l'approccio astratto all'Informatica, in qualche modo introdotto con Turing, favorisce una inadeguata inclinazione professionale. Certe diffuse carenze degli sviluppatori di software come
provengono da una preparazione ispirata alla logica astratta. Di frequente questa induce ripetute confusioni concettuali, ad esempio tra numero astratto e codice numerico, tra algoritmo matematico ed algoritmo aziendale, tra teoria e pratica che abbiamo già trattato nel corso di altre spiegazioni. L'approccio astratto alla programmazione da parte dei pionieri era ampiamente giustificato allora. Non lo è più oggi che abbiamo la programmazione ad oggetti, la multimedialità ed Internet. Gli studi di Turing furono profetici nel '36, oggi non possono essere più presi come base perché danno una visione incompleta dell'Informatica. La confusione aumenta quando, seguendo la prospettiva dei logici, si insegna l'algoritmo informatico in termini di decidibilità. Peggio ancora quando si tenta di allacciare rapporti diretti tra il computer e la mente umana, tra il calcolo ed il pensiero, tra la macchina e la deduzione astratta. Queste correlazioni sussistono ma sono assai complesse e ben lontane dall'essere semplicisticamente tracciate, dunque sono del tutto inopportune sul piano didattico. Allontanano dai problemi concreti il professionista che ha quantomai bisogno di lumi. Deviano le menti più brillanti. In sostanza al fine di mettere a fuoco i contenuti più attuali del settore è bene che l'insegnante fornisca una netta divisione di competenze tra l'Informatica e la Logica, tra l'Informatica e la Matematica, tra i contenuti di una professione pratica ed i modelli astratti.
|