Earlier quoted context omitted.
He was the go to guy for witty comments.
Dijkstra would consider that one harmful. In America we consider Wirth the to go guy for witty takeaways.
Niklaus Wirth has died
221–230 of 412 posts
Re: Niklaus Wirth has died
#222Re: Niklaus Wirth has died
#223Besides his contribution to language design, he authored one of the best puns ever. His last name is properly pronounced something like "Virt" but in the US everyone calls him by "Worth". That led him to quip, "In Europe I'm called by name, but in the US I'm called by value."
He was the go to guy for witty comments.
Re: Niklaus Wirth has died
#224Re: Niklaus Wirth has died
#225Earlier quoted context omitted.
> wirth was the greatest remaining apostle of simplicity, correctness, and software built for humans to understand; now only hoare and moore remain… No. There is another. https://en.m.wikipedia.org/wiki/Arthur_Whitney_%28computer_s...
Some would dispute the "built for humans to understand". Whitney's work is brilliant, but it's far less accessible than Wirth's.
Re: Niklaus Wirth has died
#226Earlier quoted context omitted.
>His stance on compiler optimizations is another example: only add optimization passes if they improve the compiler's self-compilation time. What an elegant metric! Condensing a multivariate optimisation between compiler execution speed and compiler codebase complexity into a single self-contained meta-metric is (aptly) pleasingly simple. I'd be interested to know how the self-build times of other compilers have chan…
You cannot add a loop skew optimization to compiler before compiler needs a loop skew optimization. Which it would not need at all because it is loop skew optimization (it requires matrix operations) that need a loop skew optimization. In short, compiler is not an ideal representation of the user programs it needs to optimize.
But yes, it wouldn’t work well in a general context. For example, auto-vectorization likely doesn’t speed up a compiler much at all, while adding the code to detect where it’s possible will slow it down.
So, that feature never can be added.
On the other hand, may lead to better designs. If, instead, you add language features that make it easier for programmers to write vectorized code, that might end up being easier for programmers. They would have to write more code, but they also would have to guess less whether their code would end up being vectorized.
Re: Niklaus Wirth has died
#227I'm a former student of his. He was one of the people that made me from a teenager that hacked on his keyboard to get something to run to a seasoned programmer that thinks before he codes. Even before I met him at the university I was programming in Oberon because there was a big crowd of programmers doing Wirth languages on the Amiga. He will be missed.
Undergraduate students were all in awe of him, but I got the impression that he did not particularly enjoy teaching them (Unlike other professors, however, he did not try to delegate that part of his responsibilities to his assistants). He seemed to have a good relationship with his graduate students.
In his class on compiler construction, he seemed more engaged (the students were already a bit more experienced, and he was iterating the Oberon design at the time). I remember an exchange we had at the oral exam — he asked me to solve the "dangling ELSE" problem in Pascal. I proposed resolving the ambiguity through a refinement of the language grammar. He admitted that this would probably work, but thought it excessively complex and wondered where I got that idea, since he definitely had not taught it, so I confessed that I had seen the idea in the "Dragon Book" (sort of the competition to his own textbook). Ultimately, I realized that he just wanted me to change the language to require an explicit END, as he had done in Modula-2 and Oberon.
Socially, he was fun to talk to, had a great store of computer lore, of course. He was also much more tolerant of "heresies" in private than in public, where he came across as somewhat dogmatic. Once, the conversation turned to Perl, which I did not expect him to have anything good to say about. To my surprise, he thought that there was a valid niche for pattern matching / text processing languages (mentioning SNOBOL as an earlier language in this niche).
Re: Niklaus Wirth has died
#228Re: Niklaus Wirth has died
#229Earlier quoted context omitted.
which languages? I've just restored an Amiga 500 with Workbench 2.1 and I'd love to honor his memory.
Modula2 was available and got used on Amiga. Silly teenager me found such high level languages "cheating" at the time.
https://www.google.com/search?q=lords+of+the+rising+sun
My understanding (please correct me) is that Turbo Pascal on PC was actually Modula2 ?
Re: Niklaus Wirth has died
#230Wirth was the chief designer of the programming languages Euler (1965), PL360 (1966), ALGOL W (1966), Pascal (1970), Modula (1975), Modula-2 (1978), Oberon (1987), Oberon-2 (1991), and Oberon-07 (2007). He was also a major part of the design and implementation team for the operating systems Medos-2 (1983, for the Lilith workstation), and Oberon (1987, for the Ceres workstation), and for the Lola (1995) digital hardwa…
I like Wirth's whole software stack: RISC-5 (not to be confused with RISC-V) implemented in Lola, Oberon the language, and Oberon the environment. IIRC Lola can generate Verilog - I think the idea was that students could start with an FPGA board and create their own CPU, compiler, and OS.
I also like his various quips - I think he said something like "I am a professor who is a programmer, and a programmer who is a professor." We need more programmer/professors like that. Definitely an inspiration for systems people everywhere.