7 ms·
I think the three greatest living language designers are Niklaus Wirth, Anders Hejlsberg, and Bjarne Stroustrup. Pascal definitely had a huge impact on program
by RcouF1uZ4gsC 6y ago
I think the three greatest living language designers are Niklaus Wirth, Anders Hejlsberg, and Bjarne Stroustrup.
Pascal definitely had a huge impact on programming, especially through Borland Turbo Pascal on the PC. I think Pascal's biggest weakness was that there was not a central figure helping guide evolution in a backwards compatible way. Wirth did a great job with Pascal, but moved on to what were to him greener pastures such as Modula-2/3 and Oberon, but which did not have nearly the impact of Pascal.
- pjmlp 6y agoWirth repents this himself, he though, like many of us, that developers care about quality and it would be obvious for them to adopt such languages. Problem is this kind of programing languages go against the UNIX culture of move fast and break things, with considers them programming with a straight jacket. So here we are fixing memory corruption issues, with hardware and OS vendors bringging back hardware tagged memory ideas from Lisp Machines to fix C machines. "A Brief History of Software Engineering" https://people.inf.ethz.ch/wirth/Miscellaneous/IEEE-Annals.pdf https://people.inf.ethz.ch/wirth/Miscellaneous/IEEE-Annals.p...
- mhd 6y agoProgramming philosophy is an interesting thing, and I don't think it's just a dichotomy. Wirth does have some things in common with the Bell Labs crowd and doesn't quite fit in the same niche as Dijkstra-esque Ivory Tower designs or very sound and secure computational mega-structures. Not a fan of functional programming, for one. I think one quality of software engineering he would disagree is the "move fast and add things" we're so enamored of. Nothing is every removed and because everything is treated like a product, you have to add new features to "sell" something, including programming languages. The "straight jacket" comment is interesting. I remember reading the "jargon file" that came with my slackware CD in the 90s and being quite pumped about the "punk" nature of the Unix crowd opposing "bondage and discipline" languages. A few years later, the same crowd of people forbids tabs in their C-clone or even has official formatting rules enforced via mandatory pretty printing.
- patrec 6y ago> I think the three greatest living language designers are Niklaus Wirth, Anders Hejlsberg, and Bjarne Stroustrup. Andrers Hejlsberg is an interesting choice because of how uniquely excellent and influential he has been at his particular niche of what I'd call "last mile language design". How anyone not suffering from Stockholm Syndrome could think that Stroustrup would come before all of, say: Kay, Goldberg, Ungar, Steele, Kelley, Hoare, Moore, Kernighan, Ierusalimschy, Figueiredo, Hewitt, Kowalski, Virding, Williams, van Rossum, Liskov, Omohundro, Dolstra and on and on is a bit hard for me to understand personally though -- but maybe these are just my biases speaking. There is no doubt his work has been highly impactful and (unlike say, php or perl) has been and continues to be the tool of choice for many of the world's top programmers.
- pjmlp 6y agoIt is not a Stockholm Syndrome at all. I think Bjarne Stroustrup is a very good language designer, his problem is that his vision is not understood by those teaching C++ (which keep doing C with classes variations, inclusive using DosBox with Turbo C++!), those that use C++ but rather be able to use Haskell at work, and the dozens of people working on WG21. You see this on his talks, blog posts and articles trying to steer the community into the golden path. Unfortunately they do not always listen, and his vote counts just for one person like everyone else. Also note that C++ is the only ISO language whose original language author is around contributing to its development. There are names on your list that I wouldn't consider for my list, for example.
- wirrbel 6y agoI think I can understand what you are aiming at it seems like a stretch. I guess one can make a case that modern C++ is Stroustrup´s idea, and one might even say "C with classes" (implemented by Stroustrup in the 80ies) is Stroustrup taking Simula's ideas and putting them on top of C so it wouldn't be really his doing. One might also add that he was still really you and frankly lacked experience. Following this, one might see the later additions to C++ in a nicer light, and frankly it was a challenging environment to improve upon pre-template C++. The problem I have with this view is that I think he is responsible for strange choices about pre-template C++, syntax wise, etc. The fact that `X a();` is a syntax conflict between a function header for a function `X a(void)` or `A a = A();` is puzzling to me, and the list can go on and on, it almost feels like he was unable to extrapolate problems programmers might have when applying it. Now, I am not sure how deep his contributions to modern C++ actually his or joint work, or even contributions by the large group of smart people that drive the standardization of C++. Maybe for C++, Rust, D and Haskell one might open up a "Team-Category" in the best language designer competition and C++ would indeed get a very favorable mention for starting out from a bad state and trying their best at lifting the language to a better place.
- mhd 6y agoHmm, I've always appreciated Hejlsberg's implementation taste (at least in the first versions of his languages), but did he design that much from scratch? TP was a great compiler, but the language was pretty much taken from previous Wirth designs. C# was quite okay in the start, and I'll remain silent about C++. I do agree with Wirth, but would probably nominate Kay, Goldberg, Wall and Meyer. AFAIK Wirth didn't have much to do with Modula-3, by the way.
- wirrbel 6y agoIt depends on your scoping of languages. Heilsberg wasn't so much concerned with syntax, but Core API Building isn't any less important.
- mhd 6y agoI do wonder how big his influence was there. Or in general. Given that the company bet highly on this and it involved the whole Windows platform, there were quite a lot of cooks in the kitchen there. So a "designer" probably acts more like a "language manager" there, as opposed to clean room academic settings. Do this, don't do this, have a deep look at Cω…
- wirrbel 6y agoall relevant work, even if it is more coordination. I think knowing Delphi one can see a fingerprint in style that can be found again in C#.