Friday, September 15, 2006

Where Programming Languages Go to Die

Friedman finished class off yesterday with yet another example of why Schemers are sometimes annoying.

Programming langauges are being designed daily that make the same mistakes we fixed in the 70s. The message isn't getting out. And that's because they haven't taken this class.

It was meant as a joke, but there's truth to it too. If the message isn't getting out, that's because Friedman only really gives the message to his class. He often jokes that the only thing he knows about industry is how to spell it. And that's fine - he should live the life he wants to lead. There's nothing requiring him to save the world from Java. I would just point out that this attitude is the main reason why Scheme is not now and doesn't seem likely to ever be an industry standard.

What could Schemers do to change things? I mean, to be fair, it's largely out of their hands. And to be fairer still, Friedman is right that what really has to change if we want to spread the Gospel According to Steele/Sussman is programmer education. If people don't develop proper programming habits, they won't be able to see the benefits of Scheme, and they won't develop better programming habits unless they take Friedman's class. Vicious circle.

But it doesn't mean we can't work with what we've got. A decent programming platform in Scheme would really help. DrScheme isn't exactly industrial strength, and while Chez Scheme sort of is, it doesn't work on a large enough number of platforms, and the documentation flat-out sucks. Plus, a Chez license costs money, which is the wrong model. Chez should be free (though maybe not open-source, at least not yet) with commercial licenses sold to businesses (a la Qt). It also wouldn't hurt to write some real applications in Scheme and open-source them, just to get the word out. Finally, participating in the propaganda wars (rather than remaining aloof) wouldn't hurt. Postings on blogs, peer-reviewed papers, direct pitches to business. This is what fanatical devotees of other languages do.

Well, whatever, this is all religion anyway, and as long as my ATM runs fine in C++, I don't really have a stake in this. The interesting thing about it, though, is that it's definitely not in any danger of dying. 30 years and still going strong. Longer than the mighty C++. And this without the widespread popularity and support that the C family has. I'm just saying that I can't help but think that, despite all the general complaining, the reason Scheme isn't big is because Schemers like it small.


Post a Comment

<< Home