Groovy-logo
|
|
Paradigm | Object-oriented, imperative, scripting |
---|---|
Designed by | James Strachan |
Developer | Guillaume Laforge (PMC Chair) Jochen Theodorou (Tech Lead) Paul King Cedric Champeau |
First appeared | 2003 |
Stable release |
2.4.8 / January 14, 2017
|
Typing discipline | Dynamic, static, strong, duck |
Platform | Java SE |
License | Apache 2.0 |
Filename extensions | .groovy |
Website | groovy-lang |
Influenced by | |
Java, Python, Ruby, Perl, Smalltalk, Objective-C | |
Influenced | |
Kotlin |
Apache Groovy is an object-oriented programming language for the Java platform. It is a dynamic language with features similar to those of Python, Ruby, Perl, and Smalltalk. It can be used as a scripting language for the Java Platform, is dynamically compiled to Java virtual machine (JVM) bytecode, and interoperates with other Java code and libraries. Groovy uses a Java-like curly-bracket syntax. Most Java code is also syntactically valid Groovy, although semantics may be different.
Groovy 1.0 was released on January 2, 2007, and Groovy 2.0 in July, 2012. Since version 2, Groovy can also be compiled statically, offering type inference, and performance near that of Java. Groovy 2.4 was the last major release under Pivotal Software's sponsorship which ended in March 2015. Groovy has since changed its governance structure to a Project Management Committee (PMC) in the Apache Software Foundation.
James Strachan first talked about the development of Groovy on his blog in August 2003. Several versions were released between 2004 and 2006. After the Java Community Process (JCP) standardization effort began, the version numbering changed and a version called "1.0" was released on January 2, 2007. After various betas and release candidates numbered 1.1, on December 7, 2007, Groovy 1.1 Final was released and immediately renumbered as Groovy 1.5 to reflect the many changes made.