blog

Groovy Barely Kicking?    Feb 25, 2007 22:26

It was unfortunate to read how Monson-Haefel has lost the enthusiasm he once had for Groovy. According to his own website his "proudest achievement was instigating JSR-241, The Groovy Language Specification", so it is a strange change of heart indeed. This is especially unfortunate considering what I perceive as an uptick in activity and interest: Groovy 1.0 was just released, Groovy In Action was published, websites about Groovy and using Groovy have come online.

I contacted the journalist who wrote the article, Alex Handy, to ask him about Mr. Monson-Haefel's remarks. He explained it as:

My basic assumption: Monson-Haefel was all about Groovy, just like everyone was "all about" Michael Jackson in 1986. Or, how everyone was "all-about" the macarena in 1996.

It's unfortunate that Groovy is regarded as a fad. I believe Groovy is more than that, and I also believe that Mr. Monson-Haefel should know better. Perhaps Mr. Handy incorrectly characterized his remarks, I don't know.

Certainly I do appreciate recognizing it does take time for a programming language to "jell". But I also appreciate James Strachan's early vision for Groovy:

One of the whole reasons why Groovy came into being was, when you start writing things like porting python and ruby and smalltalk to java, you kind of end up with a leaky abstraction. To support smalltalk semantics, they're quite different to java, or to support python semantics it's really quite different and you end up with... kinda like two worlds, python objects over here, java objects over here, kind of bridges...

The whole aim of Groovy was to try to do something that felt like Ruby and Python and Smalltalk, but where everything was pretty much mapped onto the VM and Java objects, there is no impedence mismatch, there is no abstraction layer, everything works on real Java objects and is built on the Java platform.

From my point of view, this is what makes Groovy more appealing than JRuby or Jython. For the record, I do love Ruby. I might really like JRuby on the JVM, but it's because of the impedance mismatch that makes Groovy more appealing to me on the JVM. Mr. Monson-Haefel seems to have had a different goal for Groovy:

When we pushed this through the JSR, my objective as executive was to open the public’s eyes to the fact that more than one language can be executed on the Java platform.

I think that is a good goal, however it demonstrates how different Mr. Monson-Haefel's personal goal for Groovy is from the original goal of Groovy.

Mr. Monson-Haefel compares Groovy to an "idealistic politician", however it seems to me that his remarks about other dynamic languages is the real political maneuver. Sun needs to stop developers from abanadoning Java in favor of dynamic languages, it could also use this to compete against .NET CLR. So it makes sense for Sun, and those vested in the Java world, to push dynamic languages on top of the JVM. For example, as Ruby on Rails becomes a more popular alternative to Java, Sun sponsors the development of JRuby.

Now I believe that all of this is a good thing. It's great to have multiple languages support the JVM. I just don't understand why it's necessary for Mr. Monson-Haefel to state that Groovy "didn't succeed at all (as a language)" without letting the development community decide for themselves. Java was far from perfect in its initial release, Groovy deserves the same chance.

At least Tim Bray is keeping an open mind, perhaps Mr. Monson-Haefel was just too personally invested to do so. I'm certain that Guillaume Laforge and the Groovy community will continue to forge ahead, and hope that they, and more importantly those new to Groovy, are not discouraged by Mr. Monson-Haefel's callous and untimely remarks.

Write a comment

  • Required fields are marked with *.

If you have trouble reading the code, click on the code itself to generate a new random code.
Security Code: