Dijkstra, Edsger Wiebe

Den aktuella versionen av sidan har ännu inte granskats av erfarna bidragsgivare och kan skilja sig väsentligt från versionen som granskades den 10 oktober 2021; kontroller kräver 4 redigeringar .
Edsger Wiebe Dijkstra
Edsger Wybe Dijkstra
Födelsedatum 11 maj 1930( 1930-05-11 ) [1] [2] [3] […]
Födelseort
Dödsdatum 6 augusti 2002( 2002-08-06 ) [1] [2] [3] […] (72 år)
En plats för döden
Land
Vetenskaplig sfär Informatik
Arbetsplats National Research Institute for Mathematics and Computer Science
Eindhoven University of Technology University
of Texas i Austin
Alma mater
vetenskaplig rådgivare Adrian van Wiingaarden [5]
Känd som

skapare av Dijkstras algoritm och semaforer
, en av grundarna av strukturerad programmering

en av skaparna av operativsystemet THE
Utmärkelser och priser Turing Award
Wikiquote logotyp Citat på Wikiquote
 Mediafiler på Wikimedia Commons

Edsger Wiebe Dijkstra ( holländska.  Edsger Wybe Dijkstra [6] ( 11 maj 1930 , Rotterdam , Nederländerna  - 6 augusti 2002 , Nuenen , Nederländerna ) är en nederländsk vetenskapsman vars verk påverkade utvecklingen av datavetenskap och information teknologi , ett av utvecklarnas koncept för strukturerad programmering , forskare inom formell verifiering och distribuerad datoranvändning Turing Laureate (1972) .

Biografi

Född 11 maj 1930 i Rotterdam , i en familj av vetenskapsmän (far är kemist , mamma är matematiker ).

Efter att ha lämnat skolan gick han in på fakulteten för teoretisk fysik vid universitetet i Leiden .

1951 blev han intresserad av programmering , gick in på en treveckors datorkurs vid Cambridge , sedan 1952 arbetade han som programmerare vid Amsterdam Mathematical Center under ledning av professor Adrian van Wiingaarden , senare - författaren till ett av sätten att formellt beskriva grammatiken i formella språk - de så kallade tvånivås van Wiingaarden- grammatikerna .

Redan 1952 bestämde han sig för att äntligen specialisera sig på programmering, men fullföljde ändå en kurs i teoretisk fysik.

Under andra hälften av 1950-talet, på jakt efter sätt att optimera tavlans layout utvecklade en algoritm för att hitta den kortaste vägen på en graf, som blev känd som " Dijkstras algoritm ".

1957 gifte han sig, enligt sina egna minnen, i kolumnen "yrke" i frågeformuläret, som är tänkt att fyllas i vid äktenskapet, skrev han "programmerare" - och han tvingades skriva om dokument och sa att en sådan yrket inte existerar, som ett resultat var han tvungen att ange "teoretisk fysiker" [7] .

1958-1960 deltog han i utvecklingen av programmeringsspråket Algol , arbetade i teamet för att skapa en språkkompilator ; När han tävlade med det danska laget av Peter Naur , lovade han att inte raka sig förrän projektet var färdigt och vann genom att skriva en kompilator om sex veckor, samtidigt som han uppfann en ny kompileringsregel - "call by name".

1960-talet deltog han i skapandet av operativsystemet THE , byggt som en uppsättning parallellt exekverande interagerande processer [8] . Det var under loppet av detta arbete som begreppen processsynkronisering , idén om en semafor dök upp , och behovet av att strukturera programmeringsprocessen och själva programmen var tydligt erkända.

Han arbetade för Burroughs under en lång tid . På 1970-talet utvecklade han grunderna för strukturerad programmering tillsammans med Tony Hoare och Niklaus Wirth .

Under de sista åren av sitt liv undervisade han vid University of Texas .

Han dog den 6 augusti 2002 efter en lång kamp mot cancer [9] [10] .

Vetenskapliga landvinningar

Dijkstra är känd för sitt arbete med tillämpning av matematisk logik i utvecklingen av datorprogram.

Han deltog aktivt i utvecklingen av programmeringsspråket Algol och skrev den första Algol-60-kompilatorn.

Eftersom han var en av författarna till begreppet strukturerad programmering , förespråkade han förkastandet av användningen av GOTO- instruktionen .

Han äger också idén om att använda " semaforer " för att synkronisera processer i multitasking-system och algoritmen för att hitta den kortaste vägen på en riktad graf med icke-negativa kantvikter, känd som Dijkstras algoritm .

Han föreslog också en rangergårdsalgoritm  - ett sätt att analysera matematiska uttryck som presenteras i infixnotation .

1972 vann han Turingpriset .

År 2002 mottog han det årliga priset som ges av Symposium  on Principles of Distributed Computing av Association for Computing Machinery "för den publikation som har haft störst inverkan på området för distribuerad datoranvändning"; som ett erkännande av vetenskapsmannens förtjänster har detta pris sedan 2003 kallats Dijkstra-priset .

Bibliografi

Författaren till flera böcker och många artiklar, de mest kända publikationerna är böckerna "Programmeringsdisciplin", "Anteckningar om strukturerad programmering", artikeln "Om farorna med GOTO-operatören" ( eng.  GOTO anses vara skadlig ).

Förutom att diskutera speciella frågor, i sina artiklar och böcker, försvarade Dijkstra konsekvent behovet av ett matematiskt förhållningssätt till programmering, vilket innebär en preliminär korrekt, heltäckande matematisk beskrivning av problemet och en metod för att lösa det, ett formellt bevis på riktigheten av den valda algoritmen, och den efterföljande implementeringen av algoritmen i form av det enklaste, strukturerade programmet, vars riktighet formellt måste bevisas.

Enligt Dijkstra är det rådande tillvägagångssättet i datorbranschen för programmering som en process för att uppnå ett resultat genom försök och fel ("skriva kod - testa - hitta fel - fixa - testa - ..."), eftersom det uppmuntrar programmerare inte att tänka på uppgiften, utan att skriva kod , som samtidigt inte garanterar korrektheten av program, vilket inte kan bevisas genom att testa i princip.

Varnade upprepade gånger för att försöka göra mjukvaruutveckling till en trivial process; enligt hans åsikt är programmering i grunden en extremt komplex vetenskaplig och ingenjörsverksamhet, och inga nya metoder och verktyg kan radikalt förändra denna situation - de frigör bara programmeraren från en del av rutinarbetet. Försök att göra programmering till en enkel aktivitet tillgänglig för alla är dömda att misslyckas.

År 1975 visade Dijkstra, med exemplet med läget i Tyskland, att utvecklingen av programmering som en vetenskap, baserad på ett valt programmeringsspråk, är omöjlig.

Resultatet av detta tillvägagångssätt var en fullständig klyfta mellan teori och praktik för programmering. Dijkstra noterade att antagandet i Tyskland på regeringsnivå av ALGOL 68- språket som ett grundläggande verktyg för vidareutveckling hade samma förlamande effekt som Sovjetunionens regerings beslut om övergången av den sovjetiska industrin till att kopiera IBM / 360- modellerna i det sena 1960-talet, som vetenskapsmannen kallade västvärldens största seger i det kalla kriget [11] .

Intressanta fakta

Intressanta fakta om Dijkstra: [12]

  1. Dijkstra numrerade sina artiklar EWD0, EWD1, EWD2, etc.
  2. Fakta om Dijkstra: "Han är känd för att ha lite intresse av att ta in studenter med kunskap om Fortran till seniorkurserna på universitetet där han undervisar, av anledningen att dåliga programmeringsvanor kan slå rot tillsammans med denna kunskap."
  3. Ett annat citat från Dijkstra [13] : ”Elegans, klarhet och liknande bestäms till stor del av kvantitativa aspekter. (Mozart gjorde så här: många av hans hisnande verk är bedrägligt enkla; de verkar vara gjorda av nästan ingenting!)”

Utmärkelser

Publikationer

Böcker Huvudartiklar

Se även

Anteckningar

  1. 1 2 3 4 5 6 7 8 http://amturing.acm.org/award_winners/dijkstra_1053701.cfm
  2. 1 2 MacTutor History of Mathematics Archive
  3. 1 2 Edsger Wybe Dijkstra - 2009.
  4. Encyclopædia Britannica 
  5. Mathematical Genealogy  (engelska) - 1997.
  6. [ˈɛtsxər ˈʋibə ˈdɛikstra] lyssna
  7. Edsger Dijkstra. The Humble Programmer Arkiverad 26 juni 2014 på Wayback Machine // Communications of the ACM , vol. 15 (1972), 10: 859-866]
  8. Haldar, Sibsankar och Aravind, Alex A. Operativsystem . — Pearson, 2010 . - S. 198. - 580 sid. - ISBN 978-81-317-3022-5 .
  9. Edsger Vibe Dijkstra dör .
  10. Rupert .
  11. Edsger W. Dijkstra. Reserapport EWDijkstra: NATO Summer School Marktoberdorf 1975  (engelska) . University of Texas i Austin (11 augusti 1975). Hämtad 25 juli 2017. Arkiverad från originalet 13 juli 2017.
  12. Avacheva T. G., Prutskov A. V. Modern syn på begreppet strukturerad programmering  // Cloud of Science. - 2019. - T. 6 , nr 4 . Arkiverad från originalet den 7 november 2019.
  13. Dahl W., Dijkstra E., Hoor K. Strukturell programmering. - Moskva: Mir, 1972.

Litteratur

Länkar