Bottom-Up, Top-Down, and Back to the Future

I just (finally) watched the demo video for Andrew Bragdon's CodeBubbles. You've probably already seen it, but if you haven't, check it out: it rocks. Like Kael Rowan's Code Canvas (a Microsoft research project), it imagines an IDE that is more than just a bunch of 1970s-era TTYs in a frame. I think of these as bottom-up efforts: both still accept that source code must be ASCII tokens, and do the best they can from there. In contrast, Intentional Software's still-in-beta product (described in this talk) goes further toward treating source "code" as a model in the model-view-controller sense, so that rendering and interaction can be comprehensively customized. I still believe that sooner or later, the maker of a proprietary language (most likely Wolfram Research or The MathWorks, but Microsoft is still in the running) will proudly announce a breakthrough in this area, and that everyone else will scramble to catch up, while graybeards on the sidelines point to the original Smalltalk of the late 1970s and grumble that it has all been done before.