Killring Rick Dillon's Weblog

Xtend's Disappointing Dependencies

The Eclipse Foundation announced yet-another-JVM-language called Xtend. I clicked on the article with the announcement out of curiosity, since I tend to like playing with new languages quite a bit, and have done most of my professional work under the JVM (Java, Scala and Clojure, with a bit of Jython). After looking through what they're doing, I really like it. Xtend makes me excited to start a new project and try it out.

But, when I went to download Xtend, I was presented with an interesting requirement: <!--more-->

"You need a running Eclipse including the Java Development Tools (JDT)."

Now, I understand Xtend was developed by the Eclipse folks, but I'm really disenchanted with new languages that mandate a particular development environment. You'll notice that most languages allow coders to use many different environments (by offering at least passable command-line tools), but are often optimized for a common use case, like using Eclipse as an IDE. Google does this extensively: they clearly are big consumers of Eclipse and have deeply integrated it into their GWT and Android development toolchains, for example. But they always go out of their way to provide a lightweight command-line environment that works with Vi or Emacs as well. I think that is really important; tying a language to an IDE is a brittle approach that forces users into a particular toolchain, whether or not they are familiar with it.

The topic of language design and development tools is deep, but I just wanted to express my surprise and mild disappointment that Xtend is only available under Eclipse. Perhaps some command-line tools for it are available and I just missed them.