What is Groovy? - Definition from WhatIs.com
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


  • exception handler

    - In Java, checked exceptions are found when the code is compiled; for the most part, the program should be able to recover from these. Exception handlers are coded to define what the program should ... (TheServerSide.com)

  • exception

    - An exception, in programming, is an unplanned event, such as invalid input or a loss of connectivity, that occurs while a program is executing and disrupts the flow of its instructions. Exception i... (WhatIs.com)

  • encapsulation in Java

    - Java offers four different "scope" realms--public, protected, private, and package--that can be used to selectively hide data constructs. To achieve encapsulation, the programmer declares the class... (TheServerSide.com)


  • 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 WhatIs.com 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. Find an Answer.Powered by ITKnowledgeExchange.com

Ask An IT Question

Get answers from your peers on your most technical challenges

Ask Question

Tech TalkComment



    Contribute to the conversation

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