Résumé
Edsger Wybe Dijkstra (prononciation : ), né à Rotterdam le et mort à Nuenen le , est un mathématicien et informaticien néerlandais du . Il reçoit en 1972 le prix Turing pour ses contributions sur la science et l’art des langages de programmation et au langage Algol. Juste avant sa mort, en 2002, il reçoit le prix PoDC de l'article influent, pour ses travaux sur l'autostabilisation. L'année suivant sa mort, le prix sera renommé en son honneur prix Dijkstra. Après des études de physique théorique, il s'engage dès 1955 dans le domaine de l'informatique alors naissante, dont il est l'un des pionniers les plus éclairés. Dijkstra avait une écriture manuscrite très lisible et a toujours refusé d'utiliser un traitement de texte, malgré son domaine d'activité, préférant la lettre manuscrite photocopiée. Luca Cardelli a créé une fonte « Dijkstra » en son honneur, qui imite son écriture régulière. Dijkstra référençait toutes ses lettres par EWD suivi d'un nombre, la dernière étant la lettre EWD 1318. Enseignant à l'université technique d'Eindhoven, il commence à se faire connaître en matière de systèmes avec THE Operating system, un système construit en couches d'abstraction successives et idéal pour l'enseignement (« THE » est un jeu de mots sur l'acronyme de son université Technische Hogeschool Eindhoven, école polytechnique d'Eindhoven). Fort de l'expérience d'écriture de ce système, il formalise le concept, avant lui diffus, de sémaphore puis introduit le concept de « section critique » avec deux exemples devenus classiques : le problème des lecteurs et des rédacteurs et le dîner des philosophes. Constatant les dégâts provoqués par l'usage incontrôlé de l'instruction goto en programmation, il rédige en 1968 pour les Communications of the ACM un article qu'il nomme (). Voulant publier rapidement l'article sous la forme d'une lettre à l'éditeur, l'éditeur Niklaus Wirth le rebaptise « Go To Statement Considered Harmful » (« L'Instruction Go To considérée comme nuisible »).
À propos de ce résultat
Cette page est générée automatiquement et peut contenir des informations qui ne sont pas correctes, complètes, à jour ou pertinentes par rapport à votre recherche. Il en va de même pour toutes les autres pages de ce site. Veillez à vérifier les informations auprès des sources officielles de l'EPFL.
Cours associés (1)
COM-503: Performance evaluation
In this course you will learn the methods and techniques that are used to perform a good performance evaluation during a research or development project.
Séances de cours associées (3)
L'algorithme de Dijkstra et le chemin le plus court
Couvre l'algorithme de Dijkstra pour les problèmes de chemin le plus court et son application dans les algorithmes ALL-TO-ONE et ALL-PAIRS.
L'algorithme de Dijkstra: Tous les services
Couvre l'algorithme de Dijkstra et son application au problème de chemin le plus court de toutes les paires.
Algorithme de Shor: Circuit quantique et constatation de la période
Couvre l'algorithme de Shor pour la recherche de périodes dans le calcul quantique, expliquant le circuit quantique et l'algorithme utilisé.
Publications associées (3)

Introducing Speculation in Self-Stabilization: An Application to Mutual Exclusion

Rachid Guerraoui

Self-stabilization ensures that, after any transient fault, the system recovers in a finite time and eventually exhibits correct behavior. Speculation consists in guaranteeing that the system satisfies its requirements for any execution but exhibits signif ...
2013
Concepts associés (10)
Programmation structurée
La programmation structurée constitue un sous-ensemble de la programmation impérative. C'est un paradigme important de la programmation, apparu vers 1970. Elle dérive de travaux de Nicklaus Wirth pour son Algol W et reçut son coup d'envoi avec l'article fondateur de Dijkstra dans Communications of the ACM nommé GO TO statement considered harmful (L'instruction GOTO est considérée nocive). Elle est en effet célèbre pour avoir tenté d’éliminer l'instruction goto, ou, du moins, de limiter son usage à des cas inhabituels et graves .
Programmation concurrente
La programmation concurrente est un paradigme de programmation tenant compte, dans un programme, de l'existence de plusieurs piles sémantiques qui peuvent être appelées threads, processus ou tâches. Elles sont matérialisées en machine par une pile d'exécution et un ensemble de données privées. La concurrence est indispensable lorsque l'on souhaite écrire des programmes interagissant avec le monde réel (qui est concurrent) ou tirant parti de multiples unités centrales (couplées, comme dans un système multiprocesseurs, ou distribuées, éventuellement en grille ou en grappe).
Génie logiciel
Le génie logiciel, l'ingénierie logicielle ou l'ingénierie du logiciel (en software engineering) est une science de génie industriel qui étudie les méthodes de travail et les bonnes pratiques des ingénieurs qui développent des logiciels. Le génie logiciel s'intéresse en particulier aux procédures systématiques qui permettent d'arriver à ce que des logiciels de grande taille correspondent aux attentes du client, soient fiables, aient un coût d'entretien réduit et de bonnes performances tout en respectant les délais et les coûts de construction.
Afficher plus