``conta'' ispirata a una narrazione di giuseppe flavio
TRANSCRIPT
![Page 1: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/1.jpg)
programmazione object-orientedmodelliepilogo
“Conta” ispirata a una narrazionedi Giuseppe Flavio
Claudio Mirolo
Dipartimento di Scienze Matematiche, Informatiche e Fisiche,Università di Udine, via delle Scienze 206 – Udine
Laboratorio di Programmazionenid.dimi.uniud.it
C. Mirolo Giuseppe Flavio
![Page 2: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/2.jpg)
programmazione object-orientedmodelliepilogo
Sommario
1 programmazione object-oriented
2 modelli
3 epilogo
C. Mirolo Giuseppe Flavio
![Page 3: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/3.jpg)
programmazione object-orientedmodelliepilogo
Un miracolo. . .
Il primo miracolo è checombinare un gran numero di volteun piccolo numero di operazioni elementaripermette una potenza d’azione considerevole.
Jacques Mazoyer, 2005
C. Mirolo Giuseppe Flavio
![Page 4: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/4.jpg)
programmazione object-orientedmodelliepilogo
Un miracolo. . .
Il primo miracolo è checombinare un gran numero di volteun piccolo numero di operazioni elementaripermette una potenza d’azione considerevole.
Jacques Mazoyer, 2005
C. Mirolo Giuseppe Flavio
![Page 5: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/5.jpg)
programmazione object-orientedmodelliepilogo
Un miracolo. . .
Il primo miracolo è checombinare un gran numero di volteun piccolo numero di operazioni elementaripermette una potenza d’azione considerevole.
Jacques Mazoyer, 2005
C. Mirolo Giuseppe Flavio
![Page 6: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/6.jpg)
programmazione object-orientedmodelliepilogo
Epistemologia procedurale
La rivoluzione informaticaè una rivoluzione nel modo di pensaree di esprimere quello che si pensa.L’essenza di questo cambiamento èl’emergere [di un’] epistemologia procedurale.
[. . . ] i programmi devono essere scrittiaffinché li possano leggere le persone,e solo incidentalmenteper farli eseguire dalle macchine.
Gerald J. Sussman, 2004
C. Mirolo Giuseppe Flavio
![Page 7: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/7.jpg)
programmazione object-orientedmodelliepilogo
Epistemologia procedurale
La rivoluzione informaticaè una rivoluzione nel modo di pensaree di esprimere quello che si pensa.L’essenza di questo cambiamento èl’emergere [di un’] epistemologia procedurale.
[. . . ] i programmi devono essere scrittiaffinché li possano leggere le persone,e solo incidentalmenteper farli eseguire dalle macchine.
Gerald J. Sussman, 2004
C. Mirolo Giuseppe Flavio
![Page 8: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/8.jpg)
programmazione object-orientedmodelliepilogo
Epistemologia procedurale
La rivoluzione informaticaè una rivoluzione nel modo di pensaree di esprimere quello che si pensa.L’essenza di questo cambiamento èl’emergere [di un’] epistemologia procedurale.
[. . . ] i programmi devono essere scrittiaffinché li possano leggere le persone,e solo incidentalmenteper farli eseguire dalle macchine.
Gerald J. Sussman, 2004
C. Mirolo Giuseppe Flavio
![Page 9: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/9.jpg)
programmazione object-orientedmodelliepilogo
Epistemologia procedurale
La rivoluzione informaticaè una rivoluzione nel modo di pensaree di esprimere quello che si pensa.L’essenza di questo cambiamento èl’emergere [di un’] epistemologia procedurale.
[. . . ] i programmi devono essere scrittiaffinché li possano leggere le persone,e solo incidentalmenteper farli eseguire dalle macchine.
Gerald J. Sussman, 2004
C. Mirolo Giuseppe Flavio
![Page 10: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/10.jpg)
programmazione object-orientedmodelliepilogo
Programmazione
Competenze nella programmazione
=
Capacità di organizzazione (mentale)
e di chiarezza nell’esprimere l’ organizzazione
C. Mirolo Giuseppe Flavio
![Page 11: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/11.jpg)
programmazione object-orientedmodelliepilogo
Programmazione
Competenze nella programmazione
=
Capacità di organizzazione (mentale)
e di chiarezza nell’esprimere l’ organizzazione
C. Mirolo Giuseppe Flavio
![Page 12: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/12.jpg)
programmazione object-orientedmodelliepilogo
Programmazione
Competenze nella programmazione
=
Capacità di organizzazione (mentale)
e di chiarezza nell’esprimere l’ organizzazione
C. Mirolo Giuseppe Flavio
![Page 13: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/13.jpg)
programmazione object-orientedmodelliepilogo
Programmazione
Competenze nella programmazione
=
Capacità di organizzazione (mentale)
e di chiarezza nell’esprimere l’ organizzazione
C. Mirolo Giuseppe Flavio
![Page 14: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/14.jpg)
programmazione object-orientedmodelliepilogo
Sommario
1 programmazione object-oriented
2 modelli
3 epilogo
C. Mirolo Giuseppe Flavio
![Page 15: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/15.jpg)
programmazione object-orientedmodelliepilogo
Linguaggi di programmazione imperativa
1945–55 Linguaggi macchina, linguaggi assemblatori
1953 FORTRAN J.W. Backus: progetto del primo linguaggio diprogrammazione ad alto livello
1957 Primo compilatore FORTRAN completo
1958–68 Algol F.L. Bauer, J.W. Backus, P. Naur, E.W. Dijkstra,C.A.R. Hoare e molti altri: eleganza e pulizia“Un linguaggio così avanzato per il suo tempoda migliorare non solo quelli precedenti, maanche quasi tutti i successivi.” (Hoare, 1973)
1959 COBOL Linguaggio orientato al software gestionale1969 Pascal N. Wirth: linguaggio “Algol-like”1969–73 C D. Ritchie: legato al sistema operativo Unix
C. Mirolo Giuseppe Flavio
![Page 16: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/16.jpg)
programmazione object-orientedmodelliepilogo
Linguaggi di programmazione funzionale
1958 LISP J. McCarthy (progetto), S. Russel, T. Hart &M. Levin (realizzazione) — fra i linguaggi adalto livello è preceduto solo dal FORTRAN
1962 Primo compilatore LISP completo
anni ’70 Schemer G.L. Steele Jr. & G.J. Sussman . . .
Scheme Sviluppi di LISP: progetto sperimentale di unlinguaggio di nuova concezione
anni ’70 ML R. Milner: linguaggio funzionale con un sofisti-cato sistema di tipi (polimorfi)
1990 Haskell Puramente funzionale con tipi polimorfi
C. Mirolo Giuseppe Flavio
![Page 17: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/17.jpg)
programmazione object-orientedmodelliepilogo
Linguaggi di programmazione orientata agli oggetti
anni ’60 Simula O.-J. Dahl & K. Nygaard: problemi di simu-lazione — introduzione dei principali concetti
anni ’70 Smalltalk A. Kay: intuizione della generalità ed espres-sività dell’approccio OOP
anni ’80 estensioni OO di vari linguaggi (C, Pascal,LISP, . . . )
1985 C++ B. Stroustrup: linguaggio di ampia diffusione
1988 Eiffel B. Meyer: formalizzazione nel linguaggio degli“invarianti di classe”
1991 Oak J. Gosling: Java in embrione
1995 Java Multipiattaforma, rete, sicurezza. . .
C. Mirolo Giuseppe Flavio
![Page 18: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/18.jpg)
programmazione object-orientedmodelliepilogo
Linguaggi di programmazione logica
anni ’60 Precursori “question-answering” ispirati da “ad-vice taker”, ipotizzato da J. McCarthy (1958)
1960–70 Sviluppi nell’ambito dell’intelligenza artificiale
1969 Absys J.M. Foster & E.W. Elcock: primo linguaggioasserzionale (dichiarativo)
1972 Prolog R. Kowalski (modello di calcolo: risoluzioneSL), A. Colmerauer & P. Russel (realizzazione):programmazione logica “general-purpose”
anni ’90 Curry M. Hanus e altri: linguaggio logico-funzionale
C. Mirolo Giuseppe Flavio
![Page 19: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/19.jpg)
programmazione object-orientedmodelliepilogo
Sommario
1 programmazione object-oriented
2 modelli
3 epilogo
C. Mirolo Giuseppe Flavio
![Page 20: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/20.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 21: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/21.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 22: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/22.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 23: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/23.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 24: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/24.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 25: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/25.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 26: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/26.jpg)
programmazione object-orientedmodelliepilogo
“Conta”
C. Mirolo Giuseppe Flavio
![Page 27: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/27.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Commensale
Commensale ricevi
numero passa
identifica offri
vicino accetta
C. Mirolo Giuseppe Flavio
![Page 28: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/28.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Commensale
Commensale ricevi
numero passa
identifica offri
vicino accetta
C. Mirolo Giuseppe Flavio
![Page 29: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/29.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Commensale
Commensale ricevi
numero passa
identifica offri
vicino accetta
C. Mirolo Giuseppe Flavio
![Page 30: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/30.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Commensale
Commensale ricevi
numero passa
identifica offri
vicino accetta
C. Mirolo Giuseppe Flavio
![Page 31: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/31.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Commensale
Commensale ricevi
numero passa
identifica offri
vicino accetta
C. Mirolo Giuseppe Flavio
![Page 32: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/32.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Commensale
Commensale ricevi
numero passa
identifica offri
vicino accetta
C. Mirolo Giuseppe Flavio
![Page 33: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/33.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Tavolata
Tavolata
convivialità
C. Mirolo Giuseppe Flavio
![Page 34: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/34.jpg)
programmazione object-orientedmodelliepilogo
Modelli: Tavolata
Tavolata
convivialità
C. Mirolo Giuseppe Flavio
![Page 35: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/35.jpg)
programmazione object-orientedmodelliepilogo
Al lavoro!
C. Mirolo Giuseppe Flavio
![Page 36: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/36.jpg)
programmazione object-orientedmodelliepilogo
Al lavoro!
C. Mirolo Giuseppe Flavio
![Page 37: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/37.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Sommario
1 programmazione object-oriented
2 modelli
3 epilogo
C. Mirolo Giuseppe Flavio
![Page 38: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/38.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Epilogo. . .
Giuseppe Flavio: “La guerra Giudaica”Libro III - Capitolo 8 (ca. 75 d.C.)
Comunque, malgrado l’estrema tensione, non gli mancò la consuetasagacia; ma confidando nella provvidenza di Dio, mise in gioco la suavita affidandosi alla sorte:
“E adesso”, disse, “visto che ormai siete decisi a morire, venite eaffidiamo al caso [l’ordine] secondo cui ci procureremo mutuamentela morte.” . . .
C. Mirolo Giuseppe Flavio
![Page 39: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/39.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Epilogo. . .
Giuseppe Flavio: “La guerra Giudaica”Libro III - Capitolo 8 (ca. 75 d.C.)
Comunque, malgrado l’estrema tensione, non gli mancò la consuetasagacia; ma confidando nella provvidenza di Dio, mise in gioco la suavita affidandosi alla sorte:
“E adesso”, disse, “visto che ormai siete decisi a morire, venite eaffidiamo al caso [l’ordine] secondo cui ci procureremo mutuamentela morte.” . . .
C. Mirolo Giuseppe Flavio
![Page 40: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/40.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Epilogo. . .
“Colui che sarà sorteggiato per primo, sarà ucciso dal secondosorteggiato, e così via [...], [in modo che] nessuno di noi perisca perazione della propria mano destra, [e] perché sarebbe ingiusto che,quando gli altri se ne siano già andati, qualcuno si penta e salvi séstesso.”
Questa proposta sembrò loro molto giusta; e quando li ebbe convintia regolare la questione attraverso sorteggi, estrasse un numeroanche per sé.
C. Mirolo Giuseppe Flavio
![Page 41: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/41.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Epilogo. . .
“Colui che sarà sorteggiato per primo, sarà ucciso dal secondosorteggiato, e così via [...], [in modo che] nessuno di noi perisca perazione della propria mano destra, [e] perché sarebbe ingiusto che,quando gli altri se ne siano già andati, qualcuno si penta e salvi séstesso.”
Questa proposta sembrò loro molto giusta; e quando li ebbe convintia regolare la questione attraverso sorteggi, estrasse un numeroanche per sé.
C. Mirolo Giuseppe Flavio
![Page 42: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/42.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Epilogo. . .
[...] Se anche Giuseppe fosse morto con loro, la morte sarebbesembrata più dolce della vita; ma, che ciò sia dovuto al caso o allaprovvidenza di Dio, [Giuseppe] restò per ultimo assieme a un altro.
E poiché voleva assolutamente evitare sia di essere condannato dallasorte, sia, se fosse rimasto per ultimo, di bagnare la propria manodestra nel sangue di un concittadino, lo persuase a concederglifiducia e a far sì che entrambi rimanessero vivi.
C. Mirolo Giuseppe Flavio
![Page 43: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/43.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Nella rielaborazione di Donald Knuth!
C. Mirolo Giuseppe Flavio
![Page 44: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/44.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Nella rielaborazione di Donald Knuth!
C. Mirolo Giuseppe Flavio
![Page 45: ``Conta'' ispirata a una narrazione di Giuseppe Flavio](https://reader034.vdocuments.site/reader034/viewer/2022042216/6259dd2fe9763674d87ce9f9/html5/thumbnails/45.jpg)
programmazione object-orientedmodelliepilogo
riferimenti
Riferimenti
J. Mazoyer (2005)L’enseignement de l’informatique . . .Académie des sciences
G.J. Sussman (2004)The Legacy of Computer ScienceComputer Science: Reflections on the Field
R.L. Graham, D.E. Knuth & O. Patashnik (1988)Concrete MathematicsAddison-Wesley
C. Mirolo Giuseppe Flavio