Ole-Johan Dahl

norsk ingenjör och datavetare

Ole-Johan Dahl, född 12 oktober 1931 i Mandal, Norge, död 20 juni 2002 i Asker, Norge, var en norsk datavetare, professor i datavetenskap vid Universitetet i Oslo. Han var, tillsammans med Kristen Nygaard en av pionjärerna inom objektorienterad programmering och skapare av språket Simula.[6][7] För detta fick de båda Turingpriset 2001.[8]

Ole-Johan Dahl
Född12 oktober 1931
Mandals kommun, Norge
Död29 juni 2002 (70 år)
Asker[1], Norge
Medborgare iNorge[2]
Utbildad vidUniversitetet i Oslo
SysselsättningDatavetare, ingenjör, universitetslärare
ArbetsgivareUniversitetet i Oslo
Noterbara verkSimula
Utmärkelser
Rosings hederspris (1999)
Hedersdoktor vid ETH Zürich (2000)[3]
Turingpriset (2001)[4]
IEEE John von Neumann Medal (2002)[5]
Kommendör av Sankt Olavs orden
Redigera Wikidata

Biografi redigera

Dahl kom från en familj med uråldriga traditioner inom sjöfarten.[9] Han var son till Finn Dahl och Ingrid Othilie Kathinka Pedersen. När han var sju år flyttade hans familj till Drammen.[9] När han var tretton flydde hela familjen till Sverige undan den tyska ockupationen av Norge under andra världskriget. Efter krigsslutet studerade Dahl numerisk matematik vid Universitetet i Oslo.[6]

Karriär redigera

Under värnplikten var Dahl placerad vid Norges försvarsforskningsinstitut (1952) under Jan Garwick och slutförde där en cand.real-avhandling (1957) om högnivåprogrammering för FREDERIC. Under arbetet vid forskningsinstitutet utvecklade han ett språk, MAC (Mercury Automatic Coding) för en Ferranti Mercury-dator som han arbetade med.[9] Detta lanserades internationellt 1967 och objektorientering anses idag vara en av de verkligt stora händelserna i informatikens historia. Simula utgjorde grunden för moderna språk som C++ och Java.

Dahl blev professor i numerisk analys vid Universitetet i Oslo 1968 och var en begåvad lärare såväl som forskare. Här arbetade han med Hierarchical Program Structures, förmodligen hans mest betydande publikation, som verkade vara skriven tillsammans med C.A.R. Hoare i den inflytelserika boken Structured Programming från 1972 av Dahl, Edsger Dijkstra, och Hoare. Den är den kanske mest kända akademiska boken om programvara på 1970-talet. I takt med att hans karriär utvecklades blev Dahl alltmer intresserad av användningen av formella metoder, till exempel att strikt resonera om objektorientering. Hans expertis varierade från praktisk tillämpning av idéer till deras formella matematiska grund för att säkerställa giltigheten av tillvägagångssättet.[10]

Dahl är allmänt accepterad som Norges främsta datavetare. Tillsammans med Kristen Nygaard producerade han de första idéerna för objektorienterad (OO) programmering på 1960-talet vid Norsk Regnesentral (NR)) som en del av Simula I (1961-1965) och Simula 67 (1965-1968), simuleringsprogrammeringsspråk, som började som en utökad variant och superset av ALGOL 60.[11] Dahl och Nygaard var de första som utvecklade begreppen klass, underklass (tillåter implicit information som döljer), arv, dynamisk objektskapande, etc., alla viktiga aspekter av OO-paradigmet. Ett objekt är en fristående komponent (med en datastruktur och tillhörande procedurer eller metoder) i ett programvarusystem. Dessa kombineras för att bilda ett komplett system. Det objektorienterade tillvägagångssättet är nu genomgripande i modern mjukvaruutveckling, inklusive allmänt använda tvingande programmeringsspråk som C ++ och Java.

Bibliografi (urval) redigera

  • Dahl, O.-J (1957). Multiple index countings on the Ferranti Mercury computer. Oslo: Norwegian Defence Research Establishment. 
  • Dahl, O.-J.; Garwick, Jan V. (1958). Programmer's handbook for the Ferranti Mercury Computer, Frederic at the Norwegian Defense Research Establishment – 2nd ed., Kjeller. Norwegian Defence Research Establishment. 
  • Automatisk kodning: et prosjekt ved Forsvarets forskningsinstitutt. 
  • Bell, Vic; Dahl, Ole-Johan (1963). Simscript implementation. Oslo: Norwegian Computing Center. 
  • Dahl, Ole-Johan; Nygaard, Kristen (1965). Basic concepts of Simula: an ALGOL based simulation language. Oslo: Norwegian Computing Center. 
  • Simula: a language for programming and description of discrete event systems: introduction and user's manual. Oslo: Norwegian Computing Center. 1965. 
  • Dahl, Ole-Johan (1966). Discrete event simulation languages: lectures delivered at the NATO summer school, Villard-de-Lans, September 1966. Oslo: Norwegian Computing Center. 
  • Dahl, Ole-Johan; Nygaard, Kristen (1966). Simula: an ALGOL based simulation language. Oslo: Norwegian Computing Center. 
  • Dahl, Ole-Johan; Nygaard, Kristen (1966). ”Simula: an ALGOL-based simulation language”. Communications of the ACM (New York: Association for Computing Machinery) 9 (9): sid. 671–678. doi:10.1145/365813.365819. 
  • Dahl, Ole-Johan; Nygaard, Kristen (May 1967). ”Class and subclass declarations”. skriven i Oslo. i Buxton, J. N.. I: Simulation programming languages: Proceedings of the IFIP working conference on simulation programming languages. Amsterdam, North Holland. 1968.  Organized by IFIP Technical Committee 2, programming languages; O.-J. Dahl, conference chairman.
  • Dahl, Ole-Johan (1968). Genuys, G.. red. Discrete event simulation languages. London: Academic Press (Programming languages: NATO Advanced Study Institute. 
  • Dahl, Ole-Johan; Myhrhaug, Bjørn; Nygaard, Kristen (1968). Simula 67: Common Base Language. Oslo: Norwegian Computing Center (Publication S; Revised 1970, Publication 22. 

Utmärkelser och hedersbetygelser redigera

[Redigera Wikidata]

Referenser redigera

Den här artikeln är helt eller delvis baserad på material från engelskspråkiga Wikipedia, Ole Johan Dahl, 23 september 2021.

Noter redigera

  1. ^ Aftenposten, Schibsted Norge.[källa från Wikidata]
  2. ^ Libris, 26 september 2012, läs online, läst: 24 augusti 2018.[källa från Wikidata]
  3. ^ [a b] läs online, inf.ethz.ch, läst: 10 november 2022.[källa från Wikidata]
  4. ^ [a b] läs online, amturing.acm.org.[källa från Wikidata]
  5. ^ [a b] läs online, www.ieee.org.[källa från Wikidata]
  6. ^ [a b] Nygaard, Kristen. ”Ole-Johan Dahl”. Large Norwegian Encyclopedia. https://snl.no/Ole-Johan_Dahl. 
  7. ^ Rossen, Eirik. ”Kristen Nygaard”. Norwegian Biographical Lexicon. Large Norwegian encyclopedia. https://nbl.snl.no/Kristen_Nygaard. 
  8. ^ Turingpriset
  9. ^ [a b c] http://amturing.acm.org/award_winners/dahl_6917600.cfm
  10. ^ ”Tribute to Ole-Johan Dahl”. Tribute to Ole-Johan Dahl. University of Oslo. 2002. https://www.mn.uio.no/ifi/english/about/ole-johan-dahl/. 
  11. ^ Dahl, Ole-Johan; Myhrhaug, Bjørn; Nygaard, Kristen (1970). Common Base Language. Norwegian Computing Center. s. 1.3.1. http://www.edelweb.fr/Simula/#7. Läst 14 november 2020. 

Externa länkar redigera