Niklaus Emil Wirth (born 15 February 1934) is a Swiss computer
scientist, best known for designing several programming languages,
including Pascal, and for pioneering several classic topics in
software engineering. In 1984 he won the Turing Award, generally
recognized as the highest distinction in computer science, for
developing a sequence of innovative computer languages.
2 Programming languages
3 Notable publications
4 Wirth's law
6 See also
8 External links
Wirth was born in Winterthur, Switzerland, in 1934. In 1959 he earned
a degree in
Electronics Engineering from the Swiss Federal Institute
of Technology Zürich (ETH Zürich). In 1960 he earned an
Université Laval, Canada. Then in 1963 he was awarded a Ph.D. in
Electrical Engineering and
Computer Science (EECS) from the University
of California, Berkeley, supervised by the computer designer pioneer
From 1963 to 1967 he served as assistant professor of Computer Science
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). Wirth retired in 1999.
In 2004, he was made a Fellow of the
Computer History Museum
Computer History Museum "for
seminal work in programming languages and algorithms, including Euler,
Algol-W, Pascal, Modula, and Oberon."
Niklaus Wirth, 1969, sitting on a spaghetti chair
Wirth was the chief designer of the programming languages Euler, Algol
W, Pascal, Modula, Modula-2, Oberon, Oberon-2, and Oberon-07, and
Component Pascal. He was also a major part of the design and
implementation team for the Lilith and Oberon operating systems, and
for the Lola digital hardware design and simulation system. He
received the ACM
Turing Award for the development of these languages
in 1984 and in 1994 he was inducted as a Fellow of the ACM. He
designed the simple programming language
PL/0 to illustrate compiler
design. It has formed the basis for many university compiler design
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.
His article Program Development by Stepwise Refinement, about the
teaching of programming, is considered to be a classic text in
software engineering. In 1975 he wrote the book Algorithms + Data
Structures = Programs, which gained wide recognition. Major revisions
of this book with the new title Algorithms + Data Structures were
published in 1985 and 2004. 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.
His textbook, Systematic Programming: An Introduction, was considered
a good source for students who wanted to do more than "just coding".
Regarded as a challenging text to work through, it was sought as
imperative reading for those interested in numerical mathematics.
Signature of Niklaus Wirth
In 1992 he published (together with Jürg Gutknecht) the full
documentation of the Oberon OS.. A second book (together with
Martin Reiser) was intended as a programmers guide.
Main article: Wirth's law
In 1995, he popularized the adage now known as Wirth's law: "Software
is getting slower more rapidly than hardware becomes faster." In his
1995 paper A Plea for Lean
Software he attributes it to Martin
Wirth has reportedly told the joke that, because Europeans pronounce
his name properly ("VEER-t"), while Americans pronounce it as
"nickel's worth", he is called by name in Europe and called by value
Extended Backus–Naur Form
Wirth syntax notation
Wirth–Weber precedence relationship
List of pioneers in computer science
Niklaus Wirth 2004 Fellow
^ Dasgupta, Sanjoy; Papadimitriou, Christos; Vazirani, Umesh (2008).
Algorithms. McGraw-Hill. ISBN 978-0-07-352340-8. , p. 317.
^ Bibliography of
Turing Award lectures, DBLP
^ CHM. "
Niklaus Wirth — CHM Fellow Award Winner". Retrieved December
^ Petzold, Charles (1996-09-09). "Programming Languages: Survivors and
Wannabes". The New York Times. ISSN 0362-4331. Retrieved
^ Abrahams, Paul (July 1974). "Systematic Programming: An Introduction
by Niklaus Wirth". Mathematics of Computation. American Mathematical
Society. 28 (127): 881–883. JSTOR 2005728.
^ N. Wirth and J. Gutknecht: Project Oberon - The Design of an
Operating System and
Compiler Addison-Wesley/ACM Press (1992)
ISBN 0-201-54428-8. Out of print. Online version of a second
^ M. Reiser and N. Wirth: Programming in Oberon Addison-Wesley/ACM
Press (1992) ISBN 0-201-56543-9. Out of print.
Niklaus Wirth (February 1995). "A Plea for Lean Software". Computer.
28 (2): 64–68. doi:10.1109/2.348001. Retrieved 2007-01-13.
Niklaus Wirth - Free Pascal wiki". wiki.freepascal.org. Retrieved
^ Phipps, Clay. "Niklaus Wirth". Retrieved 28 September 2016.
Wikimedia Commons has media related to Niklaus Wirth.
Wikiquote has quotations related to: Niklaus Wirth
Biography at ETH Zürich.
Personal home page at ETH Zürich.
Niklaus Wirth at
DBLP Bibliography Server
Niklaus E. Wirth at ACM.
Wirth, Niklaus (April 1971). "Program Development by Stepwise
Refinement". Communications of the ACM. 14 (4): 221–7.
Wirth, N. (1974). "On the Design of Programming Languages" (PDF).
Proc. IFIP Congress 74: 386–393.
Turing Award Lecture, 1984
Pascal and its Successors paper by
Niklaus Wirth – also includes
A Few Words with Niklaus Wirth
The School of Niklaus Wirth: The Art of Simplicity, by László
Böszörményi, Jürg Gutknecht, Gustav Pomberger (editors).
dpunkt.verlag / Morgan Kaufmann Publishers, 2000.
ISBN 3-932588-85-1 / ISBN 1-55860-723-4.
The book Algorithms and Data Structures
The book Project Oberon – The Design of an Operating System and
Compiler. The book about the Oberon language and Operating System is
now available as a PDF file. The PDF file has an additional appendix
Ten Years After: From Objects to Components.
Project Oberon 2013
Turing Award laureates
Alan Perlis (1966)
Maurice Vincent Wilkes (1967)
Richard Hamming (1968)
Marvin Minsky (1969)
James H. Wilkinson (1970)
John McCarthy (1971)
Edsger W. Dijkstra
Edsger W. Dijkstra (1972)
Charles Bachman (1973)
Donald Knuth (1974)
Allen Newell /
Herbert A. Simon
Herbert A. Simon (1975)
Michael O. Rabin
Michael O. Rabin /
Dana Scott (1976)
John Backus (1977)
Robert W. Floyd (1978)
Kenneth E. Iverson
Kenneth E. Iverson (1979)
Tony Hoare (1980)
Edgar F. Codd
Edgar F. Codd (1981)
Stephen Cook (1982)
Ken Thompson /
Dennis Ritchie (1983)
Niklaus Wirth (1984)
Richard Karp (1985)
John Hopcroft /
Robert Tarjan (1986)
John Cocke (1987)
Ivan Sutherland (1988)
William Kahan (1989)
Fernando J. Corbató
Fernando J. Corbató (1990)
Robin Milner (1991)
Butler Lampson (1992)
Juris Hartmanis /
Richard E. Stearns
Richard E. Stearns (1993)
Edward Feigenbaum /
Raj Reddy (1994)
Manuel Blum (1995)
Amir Pnueli (1996)
Douglas Engelbart (1997)
Jim Gray (1998)
Fred Brooks (1999)
Andrew Yao (2000)
Ole-Johan Dahl /
Kristen Nygaard (2001)
Ron Rivest /
Adi Shamir /
Leonard Adleman (2002)
Alan Kay (2003)
Vint Cerf /
Bob Kahn (2004)
Peter Naur (2005)
Frances E. Allen
Frances E. Allen (2006)
Edmund M. Clarke
Edmund M. Clarke /
E. Allen Emerson /
Joseph Sifakis (2007)
Barbara Liskov (2008)
Charles P. Thacker
Charles P. Thacker (2009)
Leslie G. Valiant (2010)
Judea Pearl (2011)
Shafi Goldwasser /
Silvio Micali (2012)
Leslie Lamport (2013)
Michael Stonebraker (2014)
Martin Hellman /
Whitfield Diffie (2015)
Tim Berners-Lee (2016)
John L. Hennessy
John L. Hennessy / David Patterson (2017)
Software configuration management
Software development methodology
Software development process
Software quality assurance
Software verification and validation
Edsger W. Dijkstra
Delores M. Etter
C. A. R. Hoare
Mary Jean Harrold
Michael A. Jackson
Stephen J. Mellor
Winston W. Royce
ISNI: 0000 0000 8405 6132
BNF: cb123836887 (data)