Preskočiť na obsah

Niklaus Wirth

z Wikipédie, slobodnej encyklopédie
Niklaus Wirth
švajčiarsky informatik
Niklaus Wirth
Rod. menoNiklaus Emil Wirth[1]
Narodenie15. február 1934
Winterthur, Švajčiarsko
Úmrtie1. január 2024 (89 rokov)[2]
Zürich, Švajčiarsko[2]
Alma materETH Zürich
Université Laval
University of California, Berkeley[2]
Profesiaprofesor informatiky
PodpisNiklaus Wirth, podpis (z wikidata)
Odkazy
Webstránkaethz.ch
CommonsSpolupracuj na Commons Niklaus Wirth

Niklaus Wirth (* 15. február 1934, Winterthur, Švajčiarsko – † 1. január 2024, Zürich[2])[3] bol švajčiarsky informatik, tvorca programovacích jazykov Euler (1965), PL360 (1966), ALGOL W (1966), Pascal (1970),[1] Modula (1975), Modula-2 (1978), Oberon (1988)[2][4], Oberon-2 (1991) a Oberon-07 (2007).[5] Na ETH Zürich, kde v rokoch 1968 – 1999 pôsobil ako profesor informatiky, viedol aj stavbu pracovných staníc Lilith a Ceres.[2][4] V roku 1984 získal Turingovu cenu za vývoj série inovatívnych programovacích jazykov.[6]

Je autorom knihy Algoritmy a štruktúry údajov (slovenský preklad diela Algorithms + Data Structures = Programs, preložil Pavol Fischer; Alfa, Bratislava, 1. vyd. 1988, 2. vyd. 1989, ISBN 80-05-00153-3).[7][8]

Životopis

[upraviť | upraviť zdroj]

Mladosť a štúdium

[upraviť | upraviť zdroj]

Narodil sa vo Winterthure v rodine gymnaziálneho učiteľa Waltera Wirtha a Hedwig, rodenej Keller.[2] Otec učil na miestnom gymnáziu zemepis a geológiu.[9] Od mladosti ho zaujímalo letectvo a staval modely lietadiel.[9]

V rokoch 1954 – 1958 študoval elektrotechniku na Eidgenössische Technische Hochschule (ETH) v Zürichu a v roku 1958 získal diplom elektroinžiniera.[2][4] Potom rok pôsobil ako asistent na Université Laval v Quebecu, kde v roku 1960 získal titul Master of Science.[2][9] Po štyroch mesiacoch v National Research Council v Ottawe, kde postavil malý analógový počítač, odišiel do Kalifornie.[9] Ako štipendista Fulbrightovho programu získal v roku 1963 doktorát na University of California, Berkeley.[4] Jeho dizertačná práca A Generalization of Algol vznikla pod vedením Harryho Huskeyho a Edwarda Feigenbauma.[10]

Stanford a Zürich

[upraviť | upraviť zdroj]

V rokoch 1963 – 1967 bol odborným asistentom (assistant professor) na novozaloženej katedre informatiky Stanford University.[2][4] Navrhol tam jazyk PL360 a v spolupráci s pracovnou skupinou 2.1 organizácie IFIP jazyk ALGOL W.[6] Pracovná skupina pripravovala nástupcu jazyka ALGOL 60; namiesto Wirthovho návrhu dala prednosť zložitejšiemu návrhu Adriaana van Wijngaardena, z ktorého vznikol ALGOL 68, a Wirth zo skupiny vystúpil.[5][9]

V roku 1967 sa vrátil do Švajčiarska ako odborný asistent na Univerzite v Zürichu a v roku 1968 sa stal profesorom informatiky na ETH Zürich.[2][4] Tu navrhol jazyk Pascal; jeho opis vyšiel v roku 1970 a od roku 1972 ho Wirth používal vo výučbe programovania pre triedy s približne 300 študentmi.[9] Aby sa jazyk dal ľahko preniesť na iné počítače, jeho skupina šírila prekladač, ktorý generoval tzv. p-kód pre hypotetický počítač; univerzita, ktorá chcela Pascal používať, potom musela pre svoj počítač napísať len malý interpreter.[9]

Xerox PARC, Lilith a Oberon

[upraviť | upraviť zdroj]

V rokoch 1976 – 1977 strávil študijný pobyt vo výskumnom stredisku Xerox PARC v Kalifornii.[5][6] Zaujala ho tam pracovná stanica Xerox Alto a po návrate začal s malým tímom stavať podobný počítač.[9][1] Vznikla tak pracovná stanica Lilith, dokončená v roku 1979, a pre ňu jazyk Modula-2.[4][6] V rokoch 1982 – 1984 a 1988 – 1990 viedol oddelenie informatiky ETH,[4][6] ktoré škola otvorila v roku 1981 ako svoje prvé nové oddelenie od roku 1935.[11]

Druhý študijný pobyt v Xerox PARC absolvoval v rokoch 1984 – 1985 a počas neho mu bola udelená Turingova cena.[9] Po návrate vytvoril spolu s Jürgom Gutknechtom jazyk Oberon, nástupcu jazyka Modula-2, a v ňom rovnomenný operačný systém (1986 – 1989).[3][6] Systém bežal na pracovných staniciach Ceres, ktoré na ETH vznikli v rokoch 1986 – 1990.[4] Od roku 1990 viedol na ETH Inštitút počítačových systémov.[6] Neskôr sa venoval návrhu digitálnych obvodov pre programovateľné súčiastky (FPGA) a navrhol na to jazyk Lola.[4][9]

Na dôchodku

[upraviť | upraviť zdroj]

Do dôchodku odišiel v roku 1999.[2][5] Pre nové vydanie knihy Project Oberon potom navrhol vlastný procesor RISC5, ktorý implementoval na vývojovej doske s obvodom FPGA firmy Xilinx; nové vydanie vyšlo v roku 2013 a celý systém je voľne dostupný ako otvorený softvér.[9][12][5]

Dielo a vplyv

[upraviť | upraviť zdroj]

Pascal sa stal celosvetovo rozšíreným jazykom vo výučbe programovania.[4][1] Jeho prekladač s p-kódom sa zmestil do malej pamäte, a tak sa jazyk rozšíril aj na mikropočítačoch; podľa Wirtha predávala firma Borland celý systém Turbo Pascal na jednej diskete za 50 USD, kým prekladače pre sálové počítače stáli 10 000 USD a viac.[9] Bertrand Meyer označil p-kód za „predka dnešných virtuálnych strojov“.[13] Na Pascal nadväzuje aj vývojové prostredie Delphi, ktoré sa v čase Wirthovej smrti stále predávalo.[5] Z jazyka Oberon vychádzajú ďalšie jazyky, napríklad Oberon-2, Oberon-07 a Component Pascal.[5] Autori jazyka Go uvádzajú rodinu jazykov Pascal/Modula/Oberon ako významný vplyv na jeho deklarácie a balíky.[14]

V článku Program Development by Stepwise Refinement (1971) opísal návrh programov zhora nadol (postupným zjemňovaním) tak, ako to dovtedy nikto neurobil.[13] Pravidlo, že softvér sa spomaľuje rýchlejšie, ako sa zrýchľuje hardvér, pripísal Martinovi Reiserovi; uviedol ho v príručke k systému Oberon a rozviedol v eseji A Plea for Lean Software (1995) a dnes je známe ako Wirthov zákon.[5]

Medzi jeho doktorandov patrili Martin Odersky a Michael Franz.[10] Je po ňom pomenovaná planétka 21655 Niklauswirth.[5]

Od roku 1978 získal dvanásť čestných doktorátov; prvé dva mu v roku 1978 udelili University of York a École polytechnique fédérale de Lausanne.[2][6] Ďalšie ocenenia:

  • 1983 – Emanuel R. Piore Award (IEEE)[6]
  • 1984 – Turingova cena „za vývoj série inovatívnych počítačových jazykov Euler, Algol-W, Pascal a Modula“[6]
  • 1987 – cena ACM SIGCSE za mimoriadny prínos k výučbe informatiky[6]
  • Computer Pioneer Award (IEEE Computer Society)[2][6]
  • 1989 – Cena Marcela Benoista[15]
  • 1993 – zahraničný člen americkej National Academy of Engineering[6]
  • 1994 – člen (Fellow) Association for Computing Machinery[6]
  • 1995 – člen rádu Pour le Mérite za vedy a umenia[4]
  • 1999 – ACM SIGSOFT Outstanding Research Award[16]
  • 2003 – čestný zahraničný člen American Academy of Arts and Sciences[17]
  • 2004 – člen (Fellow) Computer History Museum „za priekopnícku prácu v oblasti programovacích jazykov a algoritmov vrátane jazykov Euler, Algol-W, Pascal, Modula a Oberon“[18]
  • 2007 – ACM SIGPLAN Programming Languages Achievement Award[19]

Osobný život a smrť

[upraviť | upraviť zdroj]

Jeho prvou manželkou bola Nani Jucker a druhou Diana Pschorr.[2] Z prvého manželstva mal tri deti.[9] Po odchode do dôchodku sa učil po rusky.[9]

Zomrel 1. januára 2024 v Zürichu vo veku 89 rokov.[2][1]

Výber z diela

[upraviť | upraviť zdroj]
  • Program Development by Stepwise Refinement. In: Communications of the ACM, roč. 14, č. 4 (1971), s. 221–227.
  • Systematic Programming: An Introduction. Prentice-Hall, 1973, ISBN 0-13-880369-2.
  • s Kathleen Jensen: Pascal User Manual and Report. 1974.
  • Algorithms + Data Structures = Programs. Prentice-Hall, Englewood Cliffs, 1976, ISBN 0-13-022418-9.
    • slovensky Algoritmy a štruktúry údajov (preložil Pavol Fischer). Alfa, Bratislava, 1. vyd. 1988, 2. vyd. 1989, ISBN 80-05-00153-3.
  • Compilerbau. B. G. Teubner, Stuttgart, 1986, ISBN 3-519-32338-9.
  • s Jürgom Gutknechtom: Project Oberon: The Design of an Operating System and Compiler. Addison-Wesley, 1992, ISBN 978-0-201-54428-2.
  • s Martinom Reiserom: Programming in Oberon: Steps Beyond Pascal and Modula. Addison-Wesley, 1992, ISBN 978-0-201-56543-0.
  • Digital Circuit Design. Springer, 1995.

Referencie

[upraviť | upraviť zdroj]
  1. 1 2 3 4 5 SPICER, Dag. In Memoriam: Niklaus Wirth (1934–2024) [online]. Computer History Museum, 2024-01-05, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  2. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 ZEHNDER, Carl August. Wirth, Niklaus [online]. Historisches Lexikon der Schweiz, 2024-02-13, [cit. 2026-10-04]. Dostupné online. (po nemecky)
  3. 1 2 Zomrel Niklaus Wirth, otec Pascalu a autor slávneho počítačového zákona o neefektívnom softvéri. Aktuality.sk (Bratislava: Ringier Axel Springer Slovakia), 2024-01-07. Dostupné online [cit. 2024-01-07].
  4. 1 2 3 4 5 6 7 8 9 10 11 12 Niklaus Wirth [online]. Orden Pour le mérite für Wissenschaften und Künste, [cit. 2026-10-04]. Dostupné online. (po nemecky)
  5. 1 2 3 4 5 6 7 8 9 PROVEN, Liam. RIP: Software design pioneer and Pascal creator Niklaus Wirth [online]. The Register, 2024-01-04, [cit. 2026-10-04]. Dostupné online. Archivované 2024-01-07 z originálu. (po anglicky)
  6. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 LEE, J. A. N.. Computer Pioneers: Niklaus Wirth [online]. IEEE Computer Society, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  7. ↑ Algoritmy a štruktúry údajov / Niklaus Wirth ; [z anglického originálu preložil Pavol Fischer] – záznam v katalógu [online]. Slovenská národná knižnica, [cit. 2026-10-05]. Dostupné online.
  8. ↑ Algoritmy a štruktúry údajov / Niklaus Wirth – záznam v katalógu (1. vyd., 1988) [online]. Štátna vedecká knižnica v Košiciach, [cit. 2026-10-05]. Dostupné online.
  9. 1 2 3 4 5 6 7 8 9 10 11 12 13 14 WIRTH, Niklaus. A. M. Turing Award Oral History Interview with Niklaus Wirth (rozhovor viedla Elena Trichina) [online]. Association for Computing Machinery, 2018-03-13, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  10. 1 2 Niklaus Wirth [online]. Mathematics Genealogy Project, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  11. ↑ NEF, Andreas; WILDI, Tobias. Informatik (INFK): Aufgaben im Wandel [online]. ETH Zürich (ETHistory 1855–2005), 2005, [cit. 2026-10-04]. Dostupné online. (po nemecky)
  12. ↑ WIRTH, Niklaus. Project Oberon (New Edition 2013) [online]. ETH Zürich, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  13. 1 2 MEYER, Bertrand. Niklaus Wirth and the Importance of Being Simple [online]. Bertrand Meyer's technology+ blog, 2024-01-16, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  14. ↑ Frequently Asked Questions (FAQ): What are Go's ancestors? [online]. The Go Programming Language, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  15. ↑ Niklaus Wirth [online]. Marcel Benoist Foundation, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  16. ↑ Outstanding Research Award [online]. ACM SIGSOFT, [cit. 2026-10-04]. Dostupné online. (po anglicky)
  17. ↑ Niklaus Wirth [online]. American Academy of Arts and Sciences, [cit. 2026-10-04]. Dostupné online. Archivované 2026-02-15 z originálu. (po anglicky)
  18. ↑ Niklaus Wirth: 2004 Fellow [online]. Computer History Museum, [cit. 2026-10-04]. Dostupné online. Archivované 2019-07-03 z originálu. (po anglicky)
  19. ↑ Programming Languages Achievement Award [online]. ACM SIGPLAN, [cit. 2026-10-04]. Dostupné online. (po anglicky)

Iné projekty

[upraviť | upraviť zdroj]

Externé odkazy

[upraviť | upraviť zdroj]

Tento článok je čiastočný alebo úplný preklad článkov Niklaus Wirth na anglickej Wikipédii a Niklaus Wirth na českej Wikipédii.