Forgive me, for I have sinned. I have been seduced by Syntax — by its offer of quick implementation shortcuts, and by its promise of easy acceptance into the establishment. All lies, leading to perdition! I cast you out, Syntax!
Over the last two years I have been focusing on semantic issues. There were big gaps in what Subtext could do. I was also frustrated that my UI-centric demos did not communicate what was already fundamentally novel about Subtext. Computer scientists dismissed it as the old discredited idea of visual programming. Practitioners wanted me to port it to Java. I thought that a textual syntax would help convey the essential semantic issues, especially in academic papers. I also tried to better motivate the semantics by solving practical problems of web development.
Well, it didn’t work. Modern Computer Science is closed to radical new ideas. Fuck ’em. I am done with writing papers. I am going to implement and demo instead. I estimate that my videos have been seen 10,000 times as often as my papers have been read. I am not going to implement the system described in my last paper: typing syntax into a REPL to build a web app. BORRRRING.
It’s back to the drawing board. Literally. I think I should abandon the textual syntax and go back to where I left off with Schematic Tables. The semantics I have developed over the last two years is crucial, finally letting me do some real things. But the semantics is the secret sauce, not the main course: a better UI for complex information artifacts like programs.
I am not going to build web apps — that is the past. The triumphalism currently sweeping web developers is a sure sign of the end times. The future is outside the browser, in distributed virtual editable documents. Google Wave is just a foreshadowing. Programmers as well as users should have a persistent network-transparent direct-manipulation interface to their information artifacts. The document is the network.
Maybe I should also go back to calling it Subtext.