Part of the Programming glossary:

What is Groovy?

Groovy is a dynamic object-oriented programming language for the Java virtual machine (JVM) that can be used anywhere Java is used. The language can be used to combine Java modules, extend existing Java applications and write new applications.

Groovy can serve as a scripting language for developers new to the Java platform and can also be useful for veteran Java developers interested in enhancing the expediency and flexibility of that language.

Groovy has a Java-like syntax and works seamlessly with Java bytecode. Many of the language's features resemble those of Perl, Python, Ruby and Smalltalk.

Other features include:

  • Easy learning curve
  • Support for domain-specific languages
  • Compact syntax
  • Support for dynamic typing
  • Powerful processing primitives
  • Ease of Web application development
  • Support for unit testing.

The Groovy concept was introduced in 2003 by James Strachan. Beta versions were made available from 2004 to 2006. Version 1.0 was released in January 2007 and version 1.1 was released in December 2007. Groovy is going through standardization under Java Specification Request (JSR) 241. The project manager is Guillaume Laforge.

Learn More About IT:
> JavaBeat offers an introduction to Groovy.
> IndicThreads interviews Guillaume Laforge.
> Visit the Groovy home page.

This was last updated in October 2008
Posted by: Margaret Rouse

Related Terms


  • Easter Egg

    - An Easter Egg is an unexpected surprise -- an undocumented procedure or unauthorized feature that's playful in nature or gives credit to the software developer or chip designer. (

  • NetBeans

    - NetBeans is a Java-based integrated development environment (IDE). The term also refers to the IDE’s underlying application platform framework.  (

  • scraper site

    - A scraper site is a website that features content stolen from other sites and presented as original. Scraper sites copy valuable content from legitimate websites and republish it on their own sites. (


  • Programming

    - Terms related to software programming, including definitions about programming languages and words and phrases about software design, coding, testing and debugging.

  • Internet applications

    - This glossary contains terms related to Internet applications, including definitions about Software as a Service (SaaS) delivery models and words and phrases about web sites, e-commerce ...

Ask a Question About GroovyPowered by

Get answers from your peers on your most technical challenges

Tech TalkComment



    Contribute to the conversation

    All fields are required. Comments will appear at the bottom of the article.