Thursday, July 14, 2005

Let's Get Groovy

Python and Java lovers rejoice! JSR 241 is coming!

JSR 241 is all about Groovy. Groovy is an object-oriented, agile programming language designed for the Java platform as an alternative and comlementary language to Java with features from Python, Perl, Ruby and Smalltalk. Groovy, like the venerable Java, will run on top of the Java Platform (Java Runtime Engine)

Groovy uses a Java-like syntax which is compiled to Java bytecodes and that works seamlessly with normal Java binaries and Java libraries including J2SE 5. On the the reverse path, bytecode compiled out of Groovy can be accessed inside Java programs as though they were really created from Java programs. Groovy will be both a compiled language as well as interpreted. The compiler provides a javac-like bytecode output while the interpreter can run the Groovy program dynamically as a scripting language.

Groovy is currently undergoing standardization through the Java Community Process.



Groovy is designed to help things get done on the Java platform in a quick and concise. Groovy brings the power of a scripting language directly into the Java platform. For example:
  • Shell scripting using Groovy allows the full power of the Java Platform to be brought to bear to the task at hand.

  • Groovy can be used (and indeed is already being used) as a replacement for Java for small and medium sized applications to execute on the Java 2 Platform.

  • Groovy can be used as an embedded language for dynamic business rules or extension points utilizing the agility of Groovy and saving the cost of redeploying applications for each change of rule (especially when the rules are stored in a database).

  • Groovy makes writing test cases for unit tests very easy.


Bulk of the programming language that is used in the open source arena is either C or an agile language (Perl, Ruby, Python, PHP?). Lesser known in Linux world is Java. Groovy aims to reverse this. Imagine living in an open-source unipolar world dominated by the Java Platform, with your languages Java and Groovy, groovy baby! And of course, C will not pushed away. C is here to stay, along with Assembler.

Support JSR 241

No comments: