My ACM Queue
article on extensible programming systems
just got slashdotted
. Once again, it's clear that most of the posters haven't bothered to read the article: even the headliner seems to think that I believe programmers will all be typing XML tags five years from now.
The article's real point is that the next revolution in programming will not come from aspect-oriented languages or new ways of expressing concurrency; it will come from extensible languages---syntactically and semantically extensible, just like Common Lisp and Scheme. These languages will require us to turn programming tools into extensible frameworks, which will in turn finally force us to adopt the model/view separation that we've been telling the rest of the world to use for the last twenty years. For historical and marketing reasons, those models will probably be stored as XML, but programmers won't look at the tags any more often than they look at assembly code.
Lots of people are already working on systems of this kind; just this week, for example, I came across the Proxima
editor, a generic presentation-oriented editor for structured documents which does many of the things I think the next generation of general-purpose editors will have to do. Who knows? Maybe the Slashdot
article will turn up a few more like this... And maybe Toronto will win the Stanley Cup this year.
Postscript: I was very pleased to see Jon Udell include a mention of the article in his blog. Some of the links from his post look very interesting; looks like I've got some more reading to to...