Archivio per dicembre, 2012

…sollevando da quel lavoro mentale che tante volte ne ha fiaccato lo spirito

Questo scrisse Blaise Pascal (1623 – 1662) in una delle lettere di accompagnamento alla sua invenzione: la fatica per il calcolo manuale/mentale è la motivazione che lo portò a progettare e realizzare la Pascalina.

In particolare fu la fatica del padre Etienne a dargli lo spunto; era infatti esattore delle tasse in Normandia, sempre alle prese con lunghi e noiosi calcoli matematici. Come aiutarlo? Ci vorrebbe una macchina, pensò il giovane Blaise; e così a soli 19 anni, nel 1642, la progetta.

Pascalina

[fonte: wikipedia]

pascalinaEncyclipedieBlaise portò i disegni a degli artigiani per farsela costruire, ma non venne un gran lavoro.

L’oggetto non era utilizzabile a causa della scarsa qualità e finezza dei meccanismi. Il fatto è che quegli artigiano erano abituati a costruire case e grandi macchinari per le fabbriche, quindi poco capaci nella costruzione di meccanismi piccoli e di precisione.

Allora Blaise decise di fare da solo; (DIY nel XVII secolo);

Iniziò a frequentare il laboratorio di un fabbro ed apprese la meccanica ed il sistema per costruire parti metalliche. Sperimentò ruote dentate di varia foggia; avorio, legno, metallo e nella sua vita realizzo oltre 50 modelli di Pascalina tutti però basati sulla medesima idea della prima: quella del 1642

La Pascalina fu il primo modello di calcolatrice meccanica con riporto automatico fino a 8 cifre. Una ruota per ogni cifra, ad ogni giro completo la ruota fa scattare una tacca e fa muovere di una posizione la ruota adiacente e così via. Le cifre si compongono come con il vecchio combinatore telefonico, facendo ruotare il disco delle cifre tramite uno stilo fino a che il numero voluto non raggiunga la posizione di lettura.

Blaise capì che utilizzare una lunga catena di ruote dentate per il riporto non era una buona idea in quanto il delicato meccanismo meccanico poteva essere sottoposto ad uno stress e a rotture. Quindi progettò un sistema basato su rotazione e pesi, potremmo dire una sistema di riporto assistito dalla gravità. Quando una ruota passava da 9 a 0 faceva cadere un peso che attraverso una molla faceva girare di uno la ruota adiacente.

Il sistema era altamente ingegnoso e funzionale; aveva però il difetto che le ruote poteva girare in una sola direzione e quindi solo sommare. La soluzione di Blaise per la sottrazione consisteva nel sommare il complemento a nove del numero da sottrarre.

Questa cosa però ne permetteva l’utilizzo solo a coloro che avevano una discreta conoscenza matematica, diciamo al di sopra della media.

“mi rendo conto che la macchina potrebbe essere meno complessa se mettessi le finestrelle per leggere il risultato nella parte posteriore, ma questo sarebbe molto scomodo mentre e molto più piacevole leggere i numeri sulla parte superiore”

Blaise Pascal quindi, grandissimo matematico e filosofo è anche il precursore di una scienza che nascerà tre secoli dopo: l’ergonomia. 

La Pascalina venne immediatamente copiata da un orologiaio di Rouen e Blaise  si fece rilasciare una patente reale per impedire il commercio delle copie contraffatte e la mise in vendita con il marchio Blasius Pascal Arversnus Inventor. Il prezzo però era proibitivo: 100 lire tornesi e quindi non ebbe il successo commerciale atteso.

blaisepascalSi è detto di Blaise Pascal grande matematico, filosofo, e genio in erba. La cosa interessante è che Blaise si è formato in maniera non convenzionale. Infatti  non frequentò la scuola ma fu istruito dal padre Etienne la cui libreria funse da aula scolastica. Una volta apprese le basi di scrittura e lettura, Blaise fu lasciato libero ed autonomo nello sviluppare la propria educazione, potendo liberamente leggere quello che voleva dalla libreria del padre.

Tra l’altro Etienne non credeva che Blaise potesse avere un futuro come matematico e gli disse chiaramente di non perdere tempo a leggere libri di matematica. Blaise allora, per la classica ripicca degli adolescenti, fece esattamente il contrario. Quando ebbe 12 anni il padre si accorse che Blaise aveva acquisito discrete conoscenze di matematica anche se improprie e decise di dargli delle lezioni. Il resto è storia.

È in omaggio a questa storia che nel 1970 Niklaus Wirth crea un linguaggio di programmazione strutturata e lo chiama Pascal

[adriano parracciani aka cyberparra]

[End Of File - 101110]

un Tubo del 43

Pubblicato: 13 dicembre 2012 in File
Tag:,

un Tubo del 43

Valvola Philips TC2/250 con bollo del Ministero delle Finanze 9 Luglio 1943 (37 cm circa). Utilizzata come amplificatore sistemi TLC. Magari è servita per trasmettere la notizia dell’armistizio del 8/settembre

Nonna Cobol; Strabiliante Grace; Grande Lady del Software

Sono i nomi con cui era conosciuta Grace Murray Hopper: matematica, militare, programmatrice (tra le prime), docente, ricercatrice, progettista, divulgatrice, ed infine Ammiraglio della Marina USA.  Dal 1930 anno in cui si laurea in matematica fino al 1992, anno della sua morte, una lunga vita trascorsa nel mondo dei computer, tra quello mondo accademico, quello militare e quello dell’industria: Rand, Sparry e Digital Equipment.

young-hopperNel 1943, dopo anni di insegnamento e ricerca, Grace entra in Marina, assegnata alla programmazione del Mark I all’università di Harward. Era una dei tre persone addette ad istruire il colosso elettromeccanico progettato e gestito da Howard H. Aiken

Grace è una tosta; scrive un manuale di 500 pagine sulle operazioni per le sequenze di controllo del calcolatore e partecipa allo sviluppo dei modelli successivi di Aiken; il Mark II

Nel 1949 lascia la Marina attratta dalla nascente industria dei calcolatori. J. Presper Eckert e John Mauchly già progettisti dell’ENIAC fondano la Eckert-Mauchly Computer Corporation con la precisa idea di progettare il primo computer elettronico commerciale: UNIVAC

Grace rischia la carriera militare ed accetta la sfida entrando in quell’azienda che sarà acquistata dalla Remington Rand solo l’anno dopo e che diverrà Sperry nel 1955.

È in questo periodo, nel corso del progetto di sviluppo di UNIVAC, che Grace lascia il segno nel mondo dei calcolatori. Pare che abbia detto una frase del genere:

Sono abbastanza pigra e voglio che i programmatori tornino a fare i matematici

Già, perché fino a quel momento si era costretti a programmare un calcolatore con istruzioni di basso livello, ostiche e noiose. Serviva invece un linguaggio evoluto, con istruzioni semplici come frasi della lingua inglese, con le quali creare un programma. Ma come trasformare questo programma scritto con linguaggio di alto livello in istruzioni di “linguaggio macchina” comprensibili dal calcolatore?

È il lavoro su cui lavorò Grace Hopper ed il suo team progettando il primo compilatore della storia, il B-O per Univac. Un programma come il calcolo di una fattura poteva essere facilmente scritto e poi trasformato in istruzioni macchina dal compilatore. Il passo successivo fu lo sviluppo di un comune linguaggio di programmazione orientato al business e alle attività commerciali.

E cosi nel 1959 nacque il COBOL (COmmon Business-Oriented Language) uno dei primi e poi più diffusi linguaggi di programmazione, al cui sviluppo Grace Murray Hopper partecipò sin dall’inizio, essendo tra l’altro nel comitato che ne definiva le specifiche. Il suo fu anche un lungo lavoro di formazione e divulgazione; oggi useremo dire che Grace fece molte demo per convincere i business manager sull’affidabilità del Cobol. Quando nel 1967 Grace lascio la Sperry per rientrare in Marina, convinse la USA Navy ad utilizzarlo come linguaggio di programmazione di alto livello.

Grace Murray Hopper

Grace riprese il suo lavoro di consulente ma soprattutto di docente ed abilissima divulgatrice, particolarmente motivata verso la formazione dei giovani. Era famosa per il suoi aneddoti ed esempi; una volta mostrò un pezzo di filo elettrico di 30 cm e disse; “questo è un nano-secondo”; intendendo quella lunghezza pari alla distanza percorsa dall’elettricità in un miliardesimo di secondo. A quel punto faceva intendere ai programmatori che se sprecavano un solo microsecondo era come sprecare un filo lungo mille volte di più.

Nel 1973 divenne Capitano e nel 1983 fu nominata Ammiraglio: lavorò fino a pochi mesi della sua morte come Senior Consultant della DEC

Un ultima cosa: oggi è il 9 dicembre, lo stesso giorno e lo stesso mese in cui Grace Murray Hopper nacque nel 1906.

[adriano parracciani aka cyberparra]

[End Of File - 101101]

Tutto ciò che è calcolabile può essere calcolato da una Macchina di Turing quindi nessuna macchina, ne un semplice pc ne un supercalcolatore, può calcolare di più: potrà farlo solo più velocemente ma niente altro.

Ho parlato più volte di Alan Turing, del suo famoso Test; ed in questa occasione riparlo del suo lavoro fondante ossia la Macchina Universale di Turing; e lo faccio per una ragione che è contenuta nel titolo: ci arrivo.

LTM_Writing

Nel 1936, Alan Turing immaginò la sua Macchina Universale come un semplice nastro con infinite celle nelle quali una testina capace di andare avanti e dietro può leggere, scrivere e cancellare simboli in funzione di una serie di regole definite ossia di istruzioni. Questa fu la grande intuizione di Turing, una macchina in grado di gestire simboli; o come disse  lo storico della scienza George Dyson “il nastro contiene sia numeri che significano cose, sia numeri che fanno cose”

Numeri che significano dati e numeri che significano istruzioni.

Ogni calcolo può essere fatto in questo modo, inserendo i giusti dati e scrivendo le necessarie regole / istruzioni:

leggi la cella 1 > spostati a sinistra > cancella > scrivi 1 > spostati a destra > ecc
 

I moderni computer si basano sull’architettura hardware concepita da John von Neumann e che di fatto realizza una Macchina di Turing:

un processore preleva istruzioni e dati dalla memoria (numeri che significano dati e altri numeri che significano istruzioni), esegue le istruzioni ossia operazioni matematiche, e memorizza i risultati.

Tra le varie simulazioni della Macchina di Turing che potete trovare in rete la mia preferita è quella costruita da Jeroen van den Bos e Davy Landman del  Centrum Wiskunde & Informatica (CWI) di Amsterdam. In occasione del centenario (quest’anno) della nascita di Alan Turing, hanno costruito una Lego Turing Machine con le componenti del Lego Mindstorm NXT il robot assemblabile e programmabile della lego.

La funzione della testina è svolta dal sensore di colore che viene alzato/abbassato sul nastro dal movimento di un motore; il nastro costruito con i vari moduli di costruzione è mosso da un secondo motore con ingranaggi; i simboli intesi come 0 ed 1 sono rappresentati da pioli neri che in posizione retta vengono letti dal sensore (nero=1) mentre nell’altra posizione il sensore legge il colore bianco e quindi 0.

Gustatevi il video

LEGO Turing Machine from ecalpemos on Vimeo.

APPROFONDIMENTI

http://www.legoturingmachine.org/

[adriano parracciani aka cyberparra]

[End Of File - 101100]