Legacy of The Titan of Programming
The developer community is mourning the demise of Niklaus Emil Wirth, an 89- year-old pioneer of programming languages who passed away on the 1st of January. He is celebrated as the creator of Pascal programming language but that was only one in a list of languages he contributed to. Niklaus Wirth was the chief designer of Euler, PL360, ALGOL W, Pascal, Modula, Modula-2, Oberon, Oberon-2, and Oberon-07. His expertise extended to operating systems as well, where he significantly contributed to the design and creation of Medos-2 (1983, for the Lilith workstation) and Oberon (1987, for the Ceres workstation). Additionally, he was instrumental in the development of Lola, a digital hardware design and simulation system, in 1995. Recognising his contributions, Wirth received the prestigious ACM Turing Award in 1984 for his advancements in programming languages and was named an ACM Fellow in 1994. His legacy He was 29 when he completed his doctorate in Berkeley under Harry Huskey on the generalisation of the Algol 60 programming language. “When I was 22 or 25, I realised that actually my calling was to teach, like my father,” he said in an interview. Niklaus Wirth’s academic path included assistant professorships at Stanford University and the University of Zurich before returning to ETH Zurich in 1968 as a Professor of Computer Science, a role he held until 1999. He also enhanced his expertise with two stints at Xerox’s Palo Alto Research Center (PARC) in 1976–1977 and 1984–1985, focusing on advanced research and collaborations. Anecdotes about his wit and passion for teaching were shared by his students on HackerNews who recounted, “Undergraduate students were all in awe of him, and he seemed to have a good relationship with his graduate students.” His PhD students Martin Odersky who is known for creating the Scala programming language; William Marshall McKeeman, Peter U. Schulthess; Edouard Marmier; Rudolf Schild, and Michael Franz, all of whom have significant contributions in computer science. A Role Model for Developers Most developers today posted on social media that Pascal was one of the first programming languages they’ve learnt. Before Wirth’s contribution, many programming languages lacked a clear structure, often leading to what is known as “spaghetti code” – code with complex and tangled control structures. Wirth’s approach advocated for a more organised and modular code structure, which is evident in his design of Pascal. This approach enforced a disciplined approach to programming, with clearly defined beginning and end points for loops and conditional statements, reducing complexity and increasing readability. With each language, he worked on being as precise and his greatest legacy is his focus on engineering vs. science in programming language design. He was not  concerned with adding the latest and greatest features, but on what is proven, and what has a well understood means of efficient implementation. He explained, “The driving force for all these years was to be able to teach programming in a scientific, mathematical manner, devoid of computer jargon and idiosyncrasies and based on proper abstractions.” His first language, Euler, simplified programming syntax, making it more accessible to users. With PL360, a system programming language, he balanced low-level hardware access with structured programming principles, bridging a gap between hardware interaction and readable code design. In ALGOL W, Wirth expanded upon the foundations of ALGOL 60 by introducing new data types, enhancing the language’s versatility and setting the stage for the development of Pascal in 1970. Pascal itself was a landmark achievement in programming, emphasising readability, data structuring, and efficient code organisation, which had a lasting impact on educational programming and became a model for subsequent languages. Wirth later introduced Modula and Modula-2, which were significant for introducing the concept of modules. This innovation in language design transformed how software systems were structured, allowing for better organisation and modularity in large-scale software development. This influenced languages like Ada and Java, which adopted similar approaches to organisation and structure. When asked about what valuable features of Pascal and Modula-2 were brought into C, he said, “Most of the statement structures and data structures appear in them, and, I believe, also the important concept of static typing of all constants, variables, and procedures.” His expertise extended to operating systems as well, where he significantly contributed to the design and creation of Medos-2 for Lilith workstation and Oberon for Ceres workstation. With his understanding of hardware, these systems were designed to work seamlessly with the hardware they were built for. Additionally, Wirth was instrumental in the development of Lola, a digital hardware design and simulation system, in 1995. The Wirth’s Law, an adage he wrote about in a paper states that software becomes slower more rapidly than hardware becomes faster. This highlights the tendency of software applications to grow larger, slower, and more resource-intensive over time, a phenomenon known as software bloat. It occurs due to factors like adding new features, poor code optimization, and inefficient programming practices. As hardware advances, developers often add more features to software, contributing to this bloat, a phenomenon true He also gained a reputation for his wit, Europeans tend to pronounce his name properly, as Nih-klaus Virt, while Americans usually mangle it into something like Nickels Worth. He joked about it saying, “Europeans call me by the name while Americans call me by the value.” Niklaus Wirth’s contributions have improved programming as we know it. His philosophy of simplicity and precision in programming language design, his emphasis on structured and efficient code, and his dedication to teaching have shaped the foundations of modern programming.
Niklaus Emil Wirth, pioneer of programming languages including Pascal, passed away at 89.
Niklaus Emil Wirth, pioneer of programming languages including Pascal, passed away at 89.
[]
["Go", "API", "AI", "innovation", "ML", "Scala", "Git", "GAN", "R", "Java"]
["AI", "ML", "R", "Go", "Java", "Scala", "Git", "API", "GAN", "innovation"]
K L Krithika is a tech journalist at AIM. Apart from writing tech news, she enjoys reading sci-fi and pondering the impossible technologies, trying not to confuse it with reality.