Groovy programming is the brainchild of James Strachan, who first discussed the idea of this object-oriented language for use on the Java platform back in 2003. Since then, numerous versions have been released, with Groovy 1.1 Final officially launching for public availability on December 7, 2007. That same year, Groovy won the JAX 2007 innovation award. In 2008, a web framework of Groovy, Grails, won second place for this award. The latest version, Groovy 2.0, was released in 2012. So, what are some of the defining characteristics of this Java-based language?

Groovy: The Basics

Groovy is a classified as a dynamic, object-oriented programming language for use with the Java platform. It has features similar to other popular programming languages like Python, Ryby and Perl, and uses curly-bracket syntax similar to Java. Furthermore, most Java commands are interchangeable with Groovy, with a few nuances regarding semantics.

Apache — Groovy’s developer — touts the language as being able to integrate “…smoothly with any Java program, and immediately delivers to your application powerful features, including scripting capabilities, Domain-Specific Language authoring, runtime and compile-time meta-programming and functional programming. ”

So, one of the great things about Groovy is the simple fact that it works smoothly with Java. If you are familiar with Java, you’ll find Groovy is an easy language to learn. It integrates directly with Java and third-party libraries.

Don’t assume that Groovy is only useful for seasoned Java programmers and developers, however. Even if you’ve never written a single line of Java, you can still learn Groovy with minimal effort. It has a gentle learning curve, offering the perform platform on which newcomers can use to develop apps and programs.

Here are some of Groovy’s key features:

Similar syntax as Java but with fewer required elements, making it easier to learn for first-time users.

Type checking.

Modularity (beneficial in reducing the size of Groovy’s library).

Static compilation.

Source code files can be executed as an uncompiled script, assuming the code is outside any class definitions, or if it’s a Runnable or GroovyTestCase.

Native support for XML and HTML.

Supports prototype extension via ExpandoMetaClass, Extension Modules (available in Groovy 2, the latest version), as well as Categories and DelegatingMetaClass.

How to Download Groovy

You can download the Groovy distribution, Windows installer and associated documentation by visiting the language’s official website at http://www.groovy-lang.org/download.html. You can also join some of the various communities to discuss and share your thoughts on this popular new programming language.