The Full Wiki

Niklaus Wirth: Wikis


Note: Many of our articles have direct quotes from sources you can cite, within the Wikipedia article! This article doesn't yet, but we're working on it! See more info or our list of citable articles.


From Wikipedia, the free encyclopedia

Niklaus E. Wirth

Born February 15, 1934 (1934-02-15) (age 76)
Winterthur, Switzerland
Citizenship  Switzerland
Fields Computer Science
Institutions ETH Zurich,
Stanford University,
University of Zurich
Xerox PARC
Alma mater ETH Zurich,
Université Laval,
University of California, Berkeley
Known for Algol W, Euler, Modula, Modula-2, Oberon, Pascal
Notable awards Turing Award

Niklaus Emil Wirth (born February 15, 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 for developing a sequence of innovative computer languages.



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 M.Sc. from Université Laval, Canada. Then in 1963 he was awarded a EECS from the University of California, Berkeley, supervised by the computer designer pioneer Harry Huskey.

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). Wirth retired in 1999.

Programming languages

Niklaus Wirth, 1969

Wirth was the chief designer of the programming languages Euler, Algol W, Pascal, Modula, Modula-2 and Oberon. 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 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 classes.

Notable publications

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 and is still useful today.

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 Reiser.[1]


"Whereas Europeans generally pronounce my name the right way ('Nick-louse Veert'), Americans invariably mangle it into 'Nickel's Worth.' This is to say that Europeans call me by name, but Americans call me by value."[citation needed]
"In our profession, precision and perfection are not a dispensable luxury, but a simple necessity."
"Reliable and transparent programs are usually not in the interest of the designer."

See also


External links



Up to date as of January 14, 2010

From Wikiquote

Software gets slower faster than hardware gets faster.

Niklaus E. Wirth (born 1934-02-15) is a Swiss computer scientist and winner of the 1984 Turing Award. He is best known for designing several programming languages, including Pascal, and for pioneering several classic topics in software engineering.


  • Software gets slower faster than hardware gets faster.[1]
    • Variation: Software is decelerating faster than hardware is accelerating.
    • aka "Wirth's law"
  • As a matter of fact, the adaptability of a program to changes in its objectives (often called maintainability) and to challenges in its environment in terms of the degree to which it is neatly structured.[2]
  • But active programming consists of the design of new programs, rather than contemplation of old programs.[2]
  • Clearly, programming courses should teach methods of design and construction, and the selected examples should be such that a gradual development can be nicely demonstrated.[2]
  • During the process of stepwise refinement, a notation which is natural to the problem in hand should be used as long as possible.[2]
  • Experience shows that the success of a programming course critically depends on the choice of these examples.[2]
  • In the practical world of computing, it is rather uncommon that a program, once it performs correctly and satisfactorily, remains unchanged forever.[2]
  • Programming is usually taught by examples.[2]
  • Go To statement considered harmful.


  1. Niklaus Wirth (February 1995). "A Plea for Lean Software". Computer 28 (2): pp. 64-68. Retrieved on 2007-01-13.
  2. a b c d e f g Niklaus Wirth (April 1971). "Program Development by Stepwise Refinement". Communications of the ACM 14 (4): pp. 221-227. Retrieved on 2008-05-22.

External links

Wikipedia has an article about:


Got something to say? Make a comment.
Your name
Your email address