Check out the cool demo of Code Bubbles. This is some very nice, fresh thinking. As Gilad Bracha says, standard IDE’s look like the console of a B-52. I look forward to reading the details, which they are embargoing until their papers are presented. I wonder what UI they used? I see zooming, transparent overlays, and animation. I am guessing Silverlight.
The last several months I have been trying to make coherence deterministic, using what PL theoreticians call a type and effect system. The effect system is telling me to return to the tree data model of Subtext (which I had set aside as too complex), but with static types. Therefore I am redefining Subtext as a statically typed language, with classes and inheritance and so on. I have sketched this out, and it seems to magically resolve many of the complexities that were stumping me before. Read More
I am chairing workshops at the Onward conference this year.
The Onward! conference is dedicated to new ideas at the frontier of knowledge about software and programming. Onward! workshops are located a day’s ride past the frontier. They are where groups can explore uncharted ideas. They are an ideal base for intellectual insurrections. Workshops proposals are welcome on all topics related to software and programming, especially topics unacceptable at mainstream Computer Science conferences.
Bad news: co-action is incomplete. Read More
Here are the slides from my NEPLS talk. People seemed to enjoy it, and I got a bunch of laughs. Positive comments afterwards. Mitch Wand couldn’t stay for my talk, but I got a few minutes to talk with him, and he gave me a promising suggestion for the completeness theorem. Overall a good experience, though as usual I am relieved now that it is over.
I submitted the following to NEPLS: Read More
Back from OOPSLA, with mixed feelings. This was the smallest OOPSLA ever, and there are some big changes coming next year: they are renaming the conference SPLASH (Systems, Programming, Languages, Applications: Software for Humanity). OOPSLA becomes a colocated conference within the SPLASH umbrella, along with Onward and Dynamic Languages. The Onward program was perhaps the best ever this year, with some interesting preliminary work that was more than just metaphors and hand waving. Jonathan Aldrich’s Plaid language is worth following. Read More
Here is a video of my Onward talk.
Java is the new Cobol. But there has been a burst of language innovation on the JVM, for example Groovy, Scala, and Clojure. These languages can not become mainstream without a first-class IDE like Eclipse. Eclipse may not be that IDE. Read More
I am lost. The essential idea of coherence is a year old, and I still haven’t implemented it. I blame the trees. I have been struggling to integrate coherence with the tree-based model of computation in Subtext. It just isn’t working. In fact it hasn’t been working for years – I have struggled with the subtleties of trees in my last 4 papers. And the reviewers seemed to have struggled as well. My conclusion is that these trees are standing in the way of progress, and they have to come down. Read More
Groovy’s creator endorses Scala. Scala is very promising. When I first read Odersky’s academic paper several years ago, I was put off by the complexity of the type system. But it becomes more attractive when you look at the everyday programming aspects of the language. It does a very nice job of synthesizing functional and OO programming, and eliminating a lot of the boilerplate in Java. I would consider Scala for my own work, except that it depends on Java for UI, which is an epic failure. But for server-side programming Scala is a promising alternative to Java.
Martin Fowler has a new post in which he coins the term Illustrative Programming for what I have been calling Example Centric Programming. He gives me a nice plug too. Martin is a keen observer of trends in programming, and his terminological inventions have had an enormous influence on the practice of patterns, refactoring, and now DSL’s. I see his latest neologism as an indicator of the increasing relevance of the idea.
Check it out. Cross between a Wiki and a database. And a semantic database at that, where all fields/attributes are binary associations. See plus cards and formatting. Very cute. Has an embedded query language, using JSON syntax. Needs an embedded update language.
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! Read More
Onward has rejected my paper, but invites me to cut it in half and resubmit it. I feel like withdrawing the paper, but will probably swallow my pride. Read More
Google Wave is huge. I am not even going to try to assess it dispassionately. As I explained in my last post, the same epiphany hit me just a few weeks ago, so I have already drunk the Kool-Aid. Basically: email is the original killer app of the Internet. We live in email, but email sucks. Wave fixes a lot of the suckage. I think it could become a platform for a whole new “wave” of applications. See for yourself. But Wave raises some big questions: Read More
For a long time I have been trying to come up with the “killer app” for my new programming paradigm. A few weeks ago I discovered it. As I thought it through, I started to panic, because I realized that it really was a killer app that didn’t need a new programming language. One could drop the fancy features and end-user programmability, and be left with something much simpler but with far greater impact: a replacement for email. Now that is a killer app. Should I shelve the research and do an open source project? Try to shoehorn my language in anyway? My head has been spinning. Well, Google just announced it today.
I am in shock. Going to take some time to digest this. Maybe it will turn out for the best: silence the siren call of commercialization, but still open up a niche for my language. Or maybe it is back to the drawing boards. Really only three weeks sunk at this point. What a trip.
Time for some mental Spring cleaning. This is the first of several reviews I plan to do on interesting current research. First up is Alan Kay’s Viewpoints Research Institute. As the title states, he wants to reinvent programming. Again. The guiding goal of the project is to recreate the “personal computing experience” – from OS to apps – using dramatically fewer lines of code. They are looking for a “Moore’s Law” leap in software expressiveness of 3 or 4 orders of magnitude. Read More
The time has come to stop writing papers and start releasing code.
The Coherence home page is up at http://coherence-lang.org. The submitted version of the paper is there, with a new intro and a surprise ending.