Niklaus Wirth

From Infogalactic: the planetary knowledge core
Jump to: navigation, search
Niklaus Wirth
Niklaus Wirth, UrGU.jpg
Wirth in 2005
Born Niklaus Emil Wirth
(1934-02-15)15 February 1934
Winterthur, Switzerland
Died Script error: The function "death_date_and_age" does not exist.
Citizenship {{#statements:P27}}
Fields Computer science
Institutions <templatestyles src="Plainlist/styles.css"/>
Education <templatestyles src="Plainlist/styles.css"/>
Thesis A Generalization of Algol (1963)
Doctoral advisor {{#statements:P184}}
Doctoral students {{#statements:P185}}
Known for ALGOL W, Euler, Pascal, Modula, Modula-2, Oberon, Oberon-2, Oberon-07, Oberon System
Notable awards <templatestyles src="Plainlist/styles.css"/>
Signature

Niklaus Emil Wirth (15 February 1934 – 1 January 2024) was a Swiss computer scientist. He designed several programming languages, including Pascal, and pioneered several classic topics in software engineering. In 1984, he won the Turing Award, generally recognized as the highest distinction in computer science,[3][4] for developing a sequence of innovative computer languages.

Early life and education

Niklaus Emil Wirth was born in Winterthur, Switzerland, on 15 February 1934.[5] In 1959, he earned a Bachelor of Science (B.S.) degree in electronic engineering from the Swiss Federal Institute of Technology Zürich (ETH Zürich). In 1960, he earned a Master of Science (MSc) from Université Laval in Quebec. Then in 1963, he was awarded a PhD in electrical engineering and computer science (EECS) from the University of California, Berkeley, supervised by the computer design pioneer Harry Huskey.[6]

Career

From 1963 to 1967, he served as assistant professor of computer science at Stanford University and again at the University of Zurich. Then in 1968, he became Professor of Informatics at ETH Zürich, taking two one-year sabbaticals at Xerox PARC in California (1976–1977 and 1984–1985). He retired in 1999.[6]

Wirth was involved with developing international standards in programming and informatics, as a member of the International Federation for Information Processing (IFIP) IFIP Working Group 2.1 on Algorithmic Languages and Calculi,[7] which specified, maintains, and supports the programming languages ALGOL 60 and ALGOL 68.[8]

In 2004, he was made a Fellow of the Computer History Museum "for seminal work in programming languages and algorithms, including Euler, Algol-W, Pascal, Modula, and Oberon."[9]

Programming languages

Wirth in 1969

Wirth was the chief designer of the programming languages Euler (1965), PL360 (1966), ALGOL W (1966), Pascal (1970),[10] Modula (1975), Modula-2 (1978),[6] Oberon (1987), Oberon-2 (1991), and Oberon-07 (2007).[11] He was also a major part of the design and implementation team for the operating systems Medos-2 (1983, for the Lilith workstation),[12] and Oberon (1987, for the Ceres workstation),[13] and for the Lola (1995) digital hardware design and simulation system.[14][15] In 1984, he received the Association for Computing Machinery (ACM) Turing Award for the development of these languages.[16] In 1994, he was inducted as a Fellow of the ACM.[17]

Wirth's law

<templatestyles src="Module:Hatnote/styles.css"></templatestyles>

In 1995, he popularized the adage now named Wirth's law, which states that software is getting slower more rapidly than hardware becomes faster. In his 1995 paper "A Plea for Lean Software" he attributes it to Martin Reiser.[18]

Publications

His book, written jointly with Kathleen Jensen, The Pascal User Manual and Report, served as the basis of many language implementation efforts in the 1970s and 1980s in the United States and across Europe.[19][20]

His article Program Development by Stepwise Refinement, about the teaching of programming, is considered to be a classic text in software engineering.[21] In 1975, he wrote the book Algorithms + Data Structures = Programs, which gained wide recognition.[22] Major revisions of this book with the new title Algorithms & Data Structures were published in 1986 and 2004.[23][24] The examples in the first edition were written in Pascal. These were replaced in the later editions with examples written in Modula-2 and Oberon respectively.[23][24]

His textbook, Systematic Programming: An Introduction, was considered a good source for mathematicians desiring to understand the nature of programming.[25] The cover flap of the sixth edition (1973) stated the book "... is tailored to the needs of people who view a course on systematic construction of algorithms as part of their basic mathematical training, rather than to the immediate needs of those who wish to be able to occasionally encode a problem and hand it over to their computer for instant solution."[26] Regarded as a challenging text to work through, it was sought as imperative reading for those interested in numerical mathematics.[27]

In 1992, he and Jürg Gutknecht published the full documentation of the Oberon OS.[28] A second book, with Martin Reiser, was intended as a programming guide.[29]

Death

Wirth died on 1 January 2024, at the age of 89.[30][31]

See also

References

  1. Lua error in package.lua at line 80: module 'strict' not found.
  2. Lua error in package.lua at line 80: module 'strict' not found.
  3. Lua error in package.lua at line 80: module 'strict' not found.
  4. Bibliography of Turing Award lectures, DBLP
  5. Lua error in package.lua at line 80: module 'strict' not found.
  6. 6.0 6.1 6.2 Lua error in package.lua at line 80: module 'strict' not found.
  7. Lua error in package.lua at line 80: module 'strict' not found.
  8. Lua error in package.lua at line 80: module 'strict' not found.
  9. Lua error in package.lua at line 80: module 'strict' not found.
  10. Lua error in package.lua at line 80: module 'strict' not found.
  11. Lua error in package.lua at line 80: module 'strict' not found.
  12. Lua error in package.lua at line 80: module 'strict' not found.
  13. Lua error in package.lua at line 80: module 'strict' not found.
  14. Lua error in package.lua at line 80: module 'strict' not found.
  15. Lua error in package.lua at line 80: module 'strict' not found.
  16. Lua error in package.lua at line 80: module 'strict' not found.
  17. Lua error in package.lua at line 80: module 'strict' not found.
  18. Lua error in package.lua at line 80: module 'strict' not found.
  19. Lua error in package.lua at line 80: module 'strict' not found.
  20. Lua error in package.lua at line 80: module 'strict' not found.
  21. Lua error in package.lua at line 80: module 'strict' not found.
  22. Citations collected by the Association for Computing Machinery (ACM)
  23. 23.0 23.1 Lua error in package.lua at line 80: module 'strict' not found.
  24. 24.0 24.1 Lua error in package.lua at line 80: module 'strict' not found.
  25. Lua error in package.lua at line 80: module 'strict' not found.
  26. Lua error in package.lua at line 80: module 'strict' not found.
  27. Lua error in package.lua at line 80: module 'strict' not found.
  28. Lua error in package.lua at line 80: module 'strict' not found. Out of print. Online version of a 2nd edition. 2005 edition, PDF.
  29. Lua error in package.lua at line 80: module 'strict' not found.. Out of print.
  30. Lua error in package.lua at line 80: module 'strict' not found.
  31. Lua error in package.lua at line 80: module 'strict' not found.

External links

Template:Wirth

Template:Modula, Oberon