Edsger Wybe Dijkstra
(pronuncia
olandese
[??tsx?r ??ib? ?d?ikstra]
ascolta
ⓘ
) (
Rotterdam
,
11 maggio
1930
?
Nuenen
,
6 agosto
2002
) e stato un
informatico
olandese
.
Edsger Wybe Dijkstra nacque a
Rotterdam
l'11 maggio del
1930
. Suo padre, Douwe Wybe Dijkstra, fu un professore di chimica alle scuole superiori e servi come presidente della Dutch Chemical Society
[1]
[2]
. Sua madre, Brecthje Cornelia Kluijver (o Kluyver), fu una brillante matematica, da cui lo stesso Edsger afferma di aver imparato la capacita di trovare soluzioni eleganti
[2]
.
Durante l'ultimo anno di
Ginnasio
frequentato a Rotterdam, Dijkstra aveva deciso di studiare legge all'universita. La sua ambizione era di rappresentare i
Paesi Bassi
alle
Nazioni Unite
[1]
[2]
. Per via degli ottimi risultati conseguiti nelle discipline scientifiche all'esame finale del
1948
, sia i professori che i parenti gli suggerirono di assecondare tale propensione. L'anno seguente, pertanto, Dijkstra ando all'
Universita di Leida
a studiare matematica e fisica per i primi anni e fisica teorica negli ultimi. Questi anni universitari sono stati, a detta di Dijkstra, il periodo migliore della sua vita, malgrado fosse in difficolta economiche, lavorasse molto duramente e dormisse poco
[1]
.
Nel
1951
, mentre era ancora all'Universita di Leida a studiare, il padre, che era abbonato a
Nature
, trovo un annuncio per un corso di tre settimane sulla programmazione dei computer che si sarebbe svolto all'Universita di Cambridge in Inghilterra nel settembre dello stesso anno. Edsger colse l'occasione e per questo venne anche invitato da
Adrian van Wijngaarden
, il Direttore del dipartimento di informatica del
Centrum Wiskunde & Informatica (CWI)
, ad
Amsterdam
. A seguito di questo incontro ricevera un lavoro a tempo pieno al CWI, come primo olandese con le competenze da "programmatore". Nel
1956
Dijkstra consegui la laurea in fisica. Finiti gli studi, decide di spostarsi da Leida, dove ha soggiornato dal 1949 al 1956, a Amsterdam per lavorare a tempo pieno al CWI.
Ha lavorato come ricercatore per la
Burroughs Corporation
agli inizi degli anni '70. Nel
1972
ha ricevuto il
Premio Turing
.
Ha lavorato all'
Eindhoven University of Technology
nei Paesi Bassi e in seguito tenne la cattedra di informatica all'
Universita del Texas di Austin
.
Nel
1999
, a quasi settanta anni, Dijkstra si ritira dall'insegnamento. In occasione del suo settantesimo compleanno, il dipartimento di informatica organizza un simposio che si e tenuto nel maggio del
2000
. Nel febbraio del 2002 Edsger Wybe Dijkstra ritorna nel suo Paese d'origine, i
Paesi Bassi
.
I suoi piu importanti contributi all'informatica sono stati il cosiddetto "
algoritmo di Dijkstra
" e il concetto informatico di "
semaforo
".
E anche noto per la pessima opinione espressa a proposito dell'uso dell'istruzione
GOTO
nella
programmazione
, culminata nel celebre articolo del
1968
Go To Statement Considered Harmful
, considerato come uno dei passi fondamentali verso il rifiuto generalizzato dell'istruzione
GOTO
nei linguaggi di programmazione e della sua sostituzione con piu funzionali
strutture di controllo
come il
ciclo
while. Il celebre titolo dell'articolo non e di Dijkstra, ma di
Niklaus Wirth
, allora curatore di
Communications of the ACM
. Dijkstra era noto per essere un fan dell'
ALGOL 60
, e lavoro nel gruppo che realizzo il primo
compilatore
per questo linguaggio. Dijkstra e Jaap Zonneveld, che collaboro alla realizzazione del compilatore, si accordarono sul fatto di non radersi fino alla conclusione del progetto. Alla fine Zonneveld si taglio la lunga barba, mentre Dijkstra preferi mantenerla fino alla fine dei suoi giorni.
Sin dal
1970
, l'interesse principale di Dijkstra fu la
verifica formale
(formal verification). A quel tempo l'opinione prevalente era che bisognasse scrivere prima il programma e solo in seguito fornire una
dimostrazione matematica
di correttezza formale. Dijkstra obietto che le dimostrazioni cosi prodotte erano lunghe ed illeggibili, e che non fornivano nessuna informazione sul modo in cui il programma era stato sviluppato. Il metodo alternativo proposto da Dijkstra fu il cosiddetto
program derivation
, consistente nello sviluppare in modo parallelo il programma e la dimostrazione. Secondo le parole di Dijkstra: "develop proof and program hand in hand". Partendo da una descrizione matematica di quello che il programma dovrebbe fare, si applicano le opportune trasformazioni matematiche in modo da trasformare la descrizione matematica iniziale in un programma eseguibile. Il programma risultante viene definito come:
correct by construction
("corretto per costruzione").
Si occupo anche di
sistemi operativi
, sviluppando il concetto di semaforo, implementandolo nel sistema operativo
THE
, e formulando il famoso problema di sincronizzazione detto
problema dei cinque filosofi a cena
.
Gran parte del lavoro successivo di Dijkstra riguarda i modi per snellire le argomentazioni matematiche. In una intervista del 2001 dichiaro un desiderio di "eleganza", dove l'approccio corretto consiste nell'elaborare i pensieri mentalmente, senza tentare di comunicarli finche non sono completi. L'analogia che fece era in contrasto con l'approccio compositivo di
Mozart
e
Beethoven
.
Dijkstra era noto per le sue opinioni schiette riguardo alla programmazione, e per la sua abitudine di comporre attentamente dei manoscritti con la sua
penna stilografica
. Molti dei suoi appunti sono stati scansionati e sono
disponibili online
.
- Predicate Calculus and Programming Semantics
(1990)
- A Method of Programming
(1988)
- Selected Writings on Computing: A Personal Perspective
(1982)
- A Discipline of Programming
(1976)
- Structured Programming
(1972)
- (
EN
)
Edsger Dijkstra
, su
Enciclopedia Britannica
, Encyclopædia Britannica, Inc.
- (
EN
)
Edsger Dijkstra
, su
MacTutor
, University of St Andrews, Scotland.
- (
EN
)
Edsger Dijkstra
, su
Mathematics Genealogy Project
, North Dakota State University.
- (
EN
)
Opere di Edsger Dijkstra
, su
Open Library
,
Internet Archive
.
- (
EN
)
Edsger W. Dijkstra
, su
Goodreads
.
- Scritti di E.W. Dijkstra
- (
EN
)
Biografia su Digidome
, su
digidome.nl
.
- (
EN
)
Guida di pronuncia dell'olandese
, su
web.me.com
.
URL consultato il 19 luglio 2011
(archiviato dall'
url originale
il 24 luglio 2011)
.
- (
EN
)
Noorderlicht Interview Video, bandwidth options
, su
noorderlicht.vpro.nl
.