ALAN KAY - appunti di tutte le lezioni + risposte a tutte le domande PDF

Title ALAN KAY - appunti di tutte le lezioni + risposte a tutte le domande
Author Martina Alaimo
Course Storia dell'Informatica
Institution Università degli Studi di Torino
Pages 6
File Size 159.5 KB
File Type PDF
Total Downloads 109
Total Views 159

Summary

appunti di tutte le lezioni + risposte a tutte le domande...


Description

ALAN KAY Il lavoro di Alan Kay sul DynaBook. Alan Kay ha vari interessi, come per la musica, di fatti è un musicista. Nasce nel 1940, si arruola nel 1962 e nell’esercito scopre i computer e ha il primo incontro con l’astrazione dei dati. Questa è una cosa molto interessante perché è l’origine dell’idea di oggetto astratta concretamente da una situazione piuttosto empirica, negli scambi di file tra basi militari che utilizzavano lo stesso modello di computer, non sempre c’erano gli stessi standard di impiegati quindi bisognava ideare una maniera per rendere compatibili i file e interpretabili in basi diversi nello stesso modo. Un anonimo ha avuto l’idea di dividere i file in 3 parti: • la terza parte conteneva i dati veri e propri, quindi i record che dovevano essere trasmessi • la seconda parte conteneva le procedure del computer, che veniva utilizzato, per accedere ai dati che venivano trasmessi, cioè i record, e modificarli; • la prima parte era una sequenza di puntatori al codice delle procedure della seconda parte. Nel disegno, che viene da un articolo di Kay, ci sono i dati che sono la maggior parte dei file, ci sono le procedure, il codice delle procedure del computer che servivano per manipolarli e poi una sequenza di puntatori che davano accesso a queste procedure. Quindi l’idea di impacchettare dati e procedure con accesso a queste procedure per realizzare astrazione dalle rappresentazioni o in questo caso dagli standard diversi che venivano utilizzati, nasce in questa situazione estremamente concreta che Alan Kay ricorda come origine di questa idea di oggetto che lui realizzo implementando un linguaggio smoldog(?) Dopo la laurea, entra nel programma di dottorato nell’università dello Utah. Alan Kay studia in questa università entrando in contatto con delle idee che saranno influenti nel suo futuro: • in primo luogo, il Sketchpad di Ivan Sutherland • entra in contatto con il primo linguaggio di programmazione orientato agli oggetti, Simula 67 • il linguaggio di programmazione Logo, di Seymour Papert, per esigenze educative • il sistema nLS di Engelbart, Kay ha delle parole elogiative nei confronti del lavoro di E., è stato molto influenzato da quest’ultimo e lo considerava un profeta. Scrive la tesi di dottorato sulla macchina FLEX e sul suo linguaggio di programmazione. La tesi si intitola “il motore reattivo” però l’oggetto è questo primo linguaggio è dedicato a questa macchina che sarebbe una prima implementazione dell’idea del DynaBook, ancora molto distante. Sketchpad è stato sviluppato da Ivan Sutherland come lavoro per il PhD presso il MIT (supervisore: Claude Shannon). È stato il primo programma interattivo di grafica e CAD. La descrizione delle figure avveniva creando • master drawings, che potevano essere istanziati in: • instance drawings; quindi c’è un repertorio di forme che possono essere create e istanziate, e il controllo e la dinamica su queste figure venivano realizzati attraverso vincoli ovvero, • constraints, applicabili ai master.

Il linguaggio Simula 67 è stato sviluppato presso il centro di calcolo Norvegese da Kristen Nygaard e Ole-Johan Dahl per la simulazione ad eventi discreti. Simula 67 nasce sulla base di Algo 60(?) è stato il primo linguaggio ad avere oggetti, classi, sottoclassi ed ereditarietà. Questo ispira Kay che osserva delle relazioni tra Sketchpad e Simula C’è una metafora biologica (biologia latra passione di Kay) alla base del confronto: 1. Le cellule (“instances”) si conformano a comportamenti “master” 2. Le cellule sono autonome e comunicano tra di loro scambiandosi messaggi, esattamente come succede con gli oggetti. 3. le cellule diventano parti diverse dell’organismo, secondo il contesto. Questa metafora sarà anche alla base di Smalltalk Ci sono anche delle influenze umanistiche in Kay, prima di tutto McLuhan, Under standing Media, 1964 scrive un libro ❝ “il medium è il messaggio” perché è il medium che dà forma e controlla la scala dell’associazione umana e delle azioni. Il contenuto o gli utilizzi di tali media sono tanto diversi quanto inefficaci nel dare forma all’associazione umana. In realtà, è fin troppo tipico che il “contenuto” di ciascun medium ci renda ciechi rispetto alla sua natura ❞ dopo questo trattato, nel 67 c’è un libro di Mcluhan che si intitola “the medium is the message”(vi è un errore di battitura che Mcluhan ha pensato di tenere massage con la a al posto della e, che significa massaggio al posto di massaggio) è stato aiutato da un grafico, ed è un libro molto strano, si sviluppa il tema di Under standing Media in chiave quasi figurativa, uscito 3 anni dopo, tutti i medium sono estensioni di qualche facoltà umana, psichica o fisica , e ci sono degli esempi illustrati, esempio la ruota è un estensione del piede, il libro è un estensione dell’occhio, i vestiti sono un estensione della pelle. L’idea è che alterando i media si altera l’ambiente e che quindi anche l’uomo cambia. Alan Kay osserva che la cosa fondamentale di qualsiasi medium è: “che cosa bisogna diventare per comunicare attraverso di esso. Il computer è un medium per la comunicazione, non uno strumento.” Questa è stata un’idea che per Alan Kay è stata una rivelazione, per noi sembra strano che questa idea possa essere stata molto importante perché è un’osservazione per cui noi non trarremo molte conseguenze, però Alan Kay è andato oltre e ne ha fatto una specie di slogan per il suo lavoro successivo. Un’altra influenza viene da Papert, matematico, sviluppa il linguaggio LOGO Secondo Piaget, con cui Papert aveva collaborato, l’apprendimento nei bambini è profondamente radicato nei modi, di cui i bambini sono dotati in modo innato, per reagire al loro ambiente naturale. Papert usa le capacità di rappresentazione e interazione dei computer per simulare “micromondi” in cui i bambini possano imparare la matematica e la fisica. Quindi l’idea è: se l’apprendimento è contenuto in qualche modo nei modi di reagire all’ambiente naturale allora creare degli ambienti artificiali in cui i bambini possano muoversi, possano giocare, dei micromondi permette loro imparare per esempio le leggi della fisica. Dopo Piaget c’è stato uno psicologo, ovvero Bruner. Quest’ultimo in qualche modo riprende Piaget ma lo modifica. Per Piaget ci sono stadi successivi di modi di apprendimento: operazioni ⟶ immagini ⟶ simboli Quindi la formazione della mentalità adulta passa attraverso questi 3 stadi. Soprattutto per quanto riguarda lo stadio “immagini” è uno stadio in cui si manifestano dei comportamenti tipici in cui i bambini ad esempio vedono un bicchiere alto e stretto e un bicchiere basso e largo e non ostante la capienza sia la stessa loro

diranno che ci sarà più acqua in quello alto e stretto, questo è un modo di vedere le cose che lavora per immagine. Per Bruner questi sono tre canali di apprendimento che possono parzialmente sovrapporsi. Per Kay, questi sono tre fasi diventano i canali fondamentali per ogni interfaccia di apprendimento. Lo stadio iconico è quello dove noi riconosciamo, confrontiamo ed è uno stadio concreto, che nell’interfaccia grafica si manifesta proprio con le icone e le finestre, queste sono le immagini Poi c’è il canale simbolico dove noi concateniamo ragionamenti, questo è lo stadio è molto astratto, nel lavoro di Kay questo corrisponde a quello di programmazione. Lo slogan che descrive la posizione di Kay relativamente all’interfaccia è: “DOING with IMAGES makes SYMBOLS” Vediamo la formazione dell’idea del computer come medium dinamico: ❝ Nella stampa, gli strumenti che generate sono di tipo retorico: argomentano e persuadono. Nel computer, i materiali prodotti sono processi: simulano e decidono ❞ ❝ Da migliaia di anni esistono dispositivi per memorizzare, recuperare o manipolare informazione sotto forma di messaggi realizzati in un qualche medium. Nella maggior parte dei casi l’interazione degli uomini con i loro media è stata non-conversazionale e passiva. Ogni messaggio è, in un certo senso, una simulazione di qualche idea. L’essenza di un medium dipende molto dal modo in cui realizza i messaggi e ne permette la visualizzazione e la manipolazione. La capacità dei computer di simulare i dettagli di qualsiasi modello descrittivo significa che il computer, visto esso stesso come medium, può essere tutti gli altri media. Inoltre, questo “metamedium” è attivo, così i messaggi possono fare parte di una interazione dialogica mai possibile prima d’ora, se non attraverso un insegnante individuale ❞ Primo modello progettato da Alan Kay, 1970, il KiddiKomp, già il nome evoca uno strumento di calcolo orientato ai ragazzi che possono giocare per imparare e la cosa curiosa che in questo modello di computer disegnato noi vediamo qualcosa che assomiglia tantissimo al primo modello del McIntosh, esce nella prima metà degli anni 80, questo fa anche vedere anche quanto tempo stanno le idee ad evolversi. Un secondo modello, 1972, che è ancora più celebre è il DynaBook, un calcolatore personale per bambini, mai realizzata, possiamo osservare quanto assomigli ad un tablet odierno. Qual è la visione di Kay dietro la realizzazione questi strumenti di calcolo? Che cosa accadrebbe in un mondo in cui ognuno avesse il suo DynaBook? Ci sarebbe una nuova specie di medium: un “metamedium” che comprenderebbe una vasta gamma di media esistenti e di media non ancora inventati Questo è il pensiero guida di tutta l’attività di Kay. Quali sono i vantaggi o meglio quali sono le funzionalità offerte da questi strumenti di calcolo? Il computer è concepito come medium dinamico e questo può essere spiegato in vari modi ma una metafora che Alan Kay utilizza è quella dello strumento musicale, per esempio il flauto: è portatile, risponde immediatamente, può essere posseduto individualmente. Dal punto di vista tecnico le caratteristiche di un computer personale sarebbero: • la possibilità di memorizzazione interattiva, all’epoca non era ancora cosi frequenta la possibilità di memorizzare con la semplice pressione di tasti. Gli strumenti di memorizzazione erano molto ingombranti, ad esempio c’erano i nastri, la gestione del computer era molto più difficile e richiedeva delle competenze tecniche molte più elevate.

• lettura di testi ordinari ed ipertesti, c’è un’idea di simulazione della carta che deriva dal fatto che siamo in un contesto XEROX quindi c’era interesse per l’automazione del lavoro d’ufficio. • fonts personalizzabili, è necessario dare al computer una certa espressività. Quindi i fonts personalizzabili sono uno dei modi in cui si possono scrivere dei testi che sono attraenti e permettono di manifestare la personalità dell’autore. I fonts son entrati nella nostra vita quotidiana. • WYSIWYG nell’editing di testi, • finestre multiple (anche sovrapponibili, un’invenzione di Kay del 1971) • sensorializzazione di processi dinamici, si può declinare in vari modi: • animazione (progetto e controllo parallelo e coordinato di immagini nel tempo) • musica (progetto e controllo parallelo e coordinato di suoni nel tempo) • programmazione (progetto e controllo parallelo e coordinato di azioni nel tempo) Qui incomincia ad emergere una certa analogia tra attività di tipo artistico, ovvero la musica e l’animazione, e attività di programmazione. La parola d’ordine all’interno del DynaBook è simulazione, che permette di vedere il DynaBook come medium universale cioè un medium che è in grado di simulare tutti gli altri media e inventarli di nuovi. Nel 1970 dopo la tesi di dottorato, era appena formato il centro di ricerca dello Xerox, Alan Kay viene assunto ed entra nelle attività del laboratorio di computer, lavora anche con quelli che realizzano il compute come ad esempio lo XEROX ALTO (1973) questo modello di computer ha permesso a Kay di materializzare le sue idee.su questo computer negli anni 78/79 sono stati realizzati dei volumi di matematica, scritti con un elaboratore di testi che girava su questo computer e si chiamava BRAVO. Lo XEROX ALTO ha consentito una realizzazione dello “interim DynaBook” in attesa dei progressi della tecnologia necessaria a una ulteriore miniaturizzazione. Un altro modello, non fortunatissimo di computer personale e portatile è stato lo XEROX NoteTaker del 1976. Pare che sia stato il primo computer portatile ad essere utilizzato in aereo, su un volo dalla California a Rochester, da Douglas Fairbairn, suo progettista e costruttore. Nel caso degli strumenti creati da Alan Kay, noi abbiamo un linguaggio di programmazione molto influente. Alan kay è uno degli sviluppatori ed ideatori insieme ad Adele Goldberg che si occupava di utilizzo della programmazione in ambito educativo e Dan Ingalls che è stato un dei principali implementatori del sistema Smalltalk. C’è un albero genealogico della famiglia dei linguaggi di Smalltalk, nell’ambito della programmazione noi abbiamo un sistema di attori, cioè l’entità che rappresentano i dati e vengono viste come entità attive, noi possiamo mandargli dei messaggi. Il paradigma orientato agli oggetti in Smalltalk riprende quest’idea: 1. Tutto è un oggetto 2. Gli oggetti comunicano mandando e ricevendo messaggi (in termini di oggetti) 3. Gli oggetti hanno memoria privata, un oggetto ha uno stato interno in cui si ricorda del suo valore corrente che può essere cambiato. Come? Mandando un messaggio all’attore. 4. Ogni oggetto è istanza di una classe (che deve essere un oggetto)

5. La classe contiene il comportamento comune alle sue istanze (descritto sotto forma di elenco di oggetti in un programma) 6. Per valutare un programma, il controllo è passato al primo oggetto ed il resto è interpretato come il suo messaggio. Il primo interprete Smalltalk stava su una sola pagina (“one pager”, come lo chiama Kay, in analogia con gli “one liner” del linguaggio APL) C’è una situazione di base che è interessante rilevare in Smalltalk ed è interessante estendere in una situazione più generale. La programmazione nel sistema Smalltalk replica a tutti i livelli la situazione originaria della interazione [= scambio di messaggi] tra il computer ed il suo utilizzatore. Questa interazione e scambio di messaggi nel linguaggio di programmazione di Smalltalk è replicata in qualsiasi livello. Descrivere sinteticamente il procedimento di condivisione dei file per il computer Burroughs B220 che Alan Kay descrive come primo esempio di astrazione dei dati, nella prospettiva degli oggetti. Idea di oggetto astratta concretamente da una situazione piuttosto empirica, negli scambi tra file delle basi militari, non sempre c’erano gli stessi standard implicati, negli scambi di file tra basi militari che utilizzavano lo stesso modello di computer, non sempre c’erano gli stessi standard di impiegati quindi bisognava ideare una maniera per rendere compatibili i file e interpretabili in basi diversi nello stesso modo. Un anonimo ha avuto l’idea di dividere i file in 3 parti: • la terza parte conteneva i dati veri e propri, quindi i record che dovevano essere trasmessi • la seconda parte conteneva le procedure del computer, che veniva utilizzato, per accedere ai dati che venivano trasmessi, cioè i record, e modificarli; • la prima parte era una sequenza di puntatori al codice delle procedure della seconda parte In quale modo il funzionamento del sistema Sketchpad di Sutherland può essere confrontato con un linguaggio orientato agli oggetti? Il sistema di Sketchpad di Sutherland, letto da Alan Key durante il dottorato, e Alan Key entra in contatto con il linguaggio orientato agli oggetti, Sketchpad nasce come sistema nel 1963, ed è stato il primo programma interattivo di grafica e CAD. La descrizione delle figure avviene creando dei master drawing, che potevano essere stanziate: instance drawing, il controllo e la dinamica venivano poi realizzati tramite constraints. Paragonando questa sistema a Simula, il primo, un linguaggio orientato agli oggetti riscontra analogie che Kay esprime con una metafora biologica, le cellule (instances) si conformano a comportamenti (master) esse sono autonome, comunicano tra loro scambiandosi messaggi e diventano parti diverse dell’organismo a seconda del contesto. Indicare una metafora-guida nello sviluppo delle idee di Alan Kay sugli oggetti. Kay osserva delle relazioni tra Sketchpad e Simula e indica come metafora-guida il paragone con le cellule. Questa metafora nasce per tre motivi: le cellule, che possiamo indicare come instances, si conformano a comportamenti master, le cellule sono autonome e comunicano tra di loro scambiandosi messaggi e infine le cellule diventano parti diverse dell’organismo secondo il contesto. In quale modo Papert ed il suo linguaggio LOGO hanno influenzato Kay? Papert, un matematico, sviluppa il linguaggio LOGO in collaborazione con Piaget, secondo quest’ultimo, l’apprendimento nei bambini è profondamente radicato nei modi, di cu i bambini sono dotati in modo innato, per reagire al loro ambiente naturale. Papert usa le capacità di rappresentazione e interazione dei computer per simulare “micromondi” in cui i bambini possano imparare la matematica e la fisica. L’idea è che se

l’apprendimento è contenuto nei modi in cui interagire nell’ambiente reale, creare dei micromondi permette di fargli imparare le leggi della fisica. Che cosa si intende dicendo che il computer è un "medium dinamico"? La formazione dell’idea del computer come medium dinamico, nel computer i materiali prodotti sono processi, cioè simulano e decidono. Nella maggior parte dei casi l’interazione degli uomini con i media è stata passiva, La capacità dei computer di simulare i dettagli di qualsiasi modello descrittivo significa che il computer, visto esso stesso come medium, può essere tutti gli altri media. Inoltre, questo “metamedium” è attivo, così i messaggi possono fare parte di una interazione dialogica mai possibile prima d’ora, se non attraverso un insegnante individuale. Per medium dinamico si intende un medium in grado di essere portatile, un feedback immediato ed poterlo possedere personalmente. In che senso il computer è un medium universale? Il computer è un medium universale perché è in grado di simulare tutti gli altri linguaggi (testo, fotografia etc.) ed è anche in grado di crearne nuovi. Che cosa è un metamedium secondo Kay? Il metamedium è un nuovo tipo di medium che comprenderebbe una vasta gamma di medium esistenti e di medium non ancora inventati. In quale modo gli attori descrivono ed estendono l'idea di oggetto? Un sistema di attori estende l’idea di oggetto essendo in grado di rappresentare i dati come entità attive a cui possiamo successivamente mandare dei messaggi per poterli attivare. Esiste un albero genealogico sui linguaggi basati su attori, dove Ted Nelson scrive le didascalie dell’albero genealogico, la cosa interessante è che il disegno è stato realizzato da Mark Miller. Fare almeno tre esempi di attori secondo Carl Hewitt. [Dalla citazione da Hewitt che ho riportato sui lucidi: strutture di dati, funzioni semafori, monitor, processi reti di Quillian, formule, numeri, demoni, processi, basi di dati.] Hewitt ha percepito subito l’idea degli attori e ha intuitivamente accertato che gli attori è un agente attivo che interpreta una parte, a un segnale di attacco, secondo un copione. Usiamo la metafora degli attori per sottolineare l’inseparabilità di flusso dei dati e flusso del controllo, cioè la parte attiva del nostro programma, nel nostro modello. Arrivando ad un punto in cui i dati siano ordinati. Ci sono gli attori che sono entità attive, non ci sono entità passive. Per esempio il valore di verità, nell’ottica degli attori noi abbiamo due entità attive a cui mandiamo dei messaggi, il quale dice che chi riceve True deve dire vero e chi riceve False deve dire falso, quindi True risponde come gli dice il copione che gli è stato mandato. L’idea è quella di caratterizzare dei comportamenti come comportamenti di interazione di attori che rispondono a dei messaggi e quest’attività di scambio di messaggio simula un sistema di calcolo. Qual è il meccanismo fondamentale della dinamica di un sistema basato su oggetti? In un meccanismo basato su oggetti bisogna pensare nella logica che tutto è un oggetto, gli oggetti comunicano mandando e ricevendo messaggi questo porta ad uno stile di programmazione molto originale, gli oggetti hanno memoria privata ed ogni oggetto è un’ istanza di classe, la classe contiene il comportamento comune alle sue istanze per valut...


Similar Free PDFs