Conversations with the Creators of Major Programming Languages

Comment viewing options

Select your preferred way to display the comments and click "Save settings" to activate your changes.

Reviews, anyone?

Reviews, anyone?

Seconded

I've been curious about this book, but I probably won't really look at it until I hear positive reviews from people I trust...

standing in the bookstore

I read 3 chapters while standing in the bookstore :-)
- Simon Peyton Jones, Paul Hudak, Philip Wadler, and John Hughes: Haskell
- Luiz Henrique de Figueiredo and Roberto Ierusalimschy: Lua
- Anders Hejlsberg: Delphi inventor and lead developer of C#

The interview material seems to have been gathered from email conversations. It gives a retrospective on what they thought they were doing and how well they think decisions turned out. It might be valuable as a way of getting beyond heroes and villains. When the library acquires a copy I'll probably read it.

Any revelations, for someone

Any revelations, for someone who follows HOPL and related stuff?

I posted a review on my blog

I posted a review on my blog a couple of weeks ago:

http://carcaddar.blogspot.com/2009/04/masterminds-of-programming.html

HOPL

Standout Robin Milner Interview

The Haskell interview is good, it offers further interesting historical perspective beyond the SPJ paper on the same topic.

The Robin Milner interview is the standout in this book; among other interesting things, he compares the relation between models from natural science and their use in engineering and models from mathematics and their use in computing science. But here's the kicker:

Is there any lesson from the research field that you don't see applied?

Robin: Most programming languages have been desgined without first thinking about the theory on which the meaning would be based. So, very often a language gets designed and implemented, and then what it means, what is supposed to happen when every program is run, is not necessarily predicted. Of course it was in some cases wonderfuly predicted, for example, in ALGOL60; the ALGOL60 report of 1960 was so accurate that one could follow it and find out what was going to happen. This isn't always the case. Even in the good languages, the formal basis is not there before the language arrives, so what people do is later to retrofit a theory of meaning to the language, and maybe that means that the design could not take advantage of theoretical understanding.

Having recently switched from Ruby to Haskell, I think I understand exactly what he's talking about. (Ruby, for those who haven't used it extensively, is a semantic disaster.) I think that he understates the problem in modern industry: not only is the design of most languages in the last two decades unable to take advantage of theoretical understanding, it often suffers greatly from not even having a minimal amount of it.

Reading that and pondering it actually rather depressed me; at the moment I have little interest in reading about the development of Python and SQL. (Admittedly, I've had something of a hatred of SQL since studying relational database theory.) This likely means that I'll set the book aside for a while and come back to it when I'm in a more cheerful mood.

i believe i feel your pain

there oughta be some kind of group therapy for people who are kinda annoyed with hacks. wait. is that ltu?

it works

It works for larger things than hacks. After years on the standards committees for Fortran, Pascal, and C++, I retreated to learning Haskell and reading ltu.

mediocre

It's got humor value, I'll give it that. At one point one of the interviewers asks something along the lines of "what's stopping us from writing a program to verify that all our other programs are bug free."

Aside from apparently never having heard of the halting problem, the interviewers are overly concerned about instigating language vs language fights, with sometimes hilarious results. Notable examples are Guido "you can write reduce in a couple of lines of Python, which you can't do in a functional language" van Rossum, and Bjarne "Sun's marketing budget is the only reason Java could compete with C++" Stroustrup.

Aside from a couple of standout chapters (forth, ML), I doubt anyone on LtU's going to get much out of it.

Actual quotes?

Are the passages you attribute to Guido Van Rossum and Bjarne Stroustrup actual quotes, or just paraphrases?

Paraphrases

Sorry, all are paraphrased - I can try to dig up the actual quotes when I have the book at hand.

Actual quotes:

Stroustrup:

Sun's efforts with Java showed how amateurish and underfinanced every previous effort to establish a (more or less) general purpose language had been. The U.S. Department of Defense's efforts to establish Ada as a dominant language was a sharp contrast, as were the unfinanced efforts by me and my friends to establish C++. I can't say that I approve of some of the Java tactics, such as selling top-down to nonprogramming executives, but it shows what can be done.

van Rossum:

You can write reduce() in a few lines of Python. Not so in a functional language.

Wow!

Wow!