Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.

...

  • Groovy 1.8-final: End of April 2011 (tick)
  • Groovy 1.8.1: End of July 2011 (tick)
  • Groovy 1.8.3: Early September 2011 (tick)
  • Groovy 1.8.4: Octobre 2011 (tick)
  • Groovy 1.8.5: End of December 2011 (tick)
  • Groovy 1.8.6: February 2012 (tick)
  • Groovy 1.8.7: April 20122012 

Groovy 2.0

Groovy 2.0 was formerly known as Groovy 1.9, but considering the important new features, a 2.0 moniker was better representing the importance of that release.

...

Release mainly geared towards the alignments with the upcoming but delayed JDK 7.

  • work related to JDK 7
  • modularity of Groovy (splitting Groovy in smaller JARs on a per feature basis) and extension modules
  • static type checking AST transform
  • static compilation AST transform

...

  • Groovy 1.9-beta-1: July 2011 (tick)
  • Groovy 1.9-beta-3: September 2011 (tick)
  • Groovy 1.9-beta-4: October 2011 (tick)
  • Groovy 2.0-beta-1: November 2011 (tick)
  • Groovy 2.0-beta-2: December 2011 (tick)
  • Groovy 2.0-beta-3: March May 2012 (tick)
  • Groovy 2.0-betarc-4: April 20121: end of May 2012 (tick)
  • Groovy 2.0-rc-1: April 2012(possible 2: early June 2012 (tick)
  • Groovy 2.0-rc-3: mid June 2012 (tick)
  • Groovy 2: Mid April 2012 if needed).0-rc-4: end of June 2012 (tick)
  • Groovy 2.0-final: End end of April June 2012

Groovy 3.0

Feature set

  • New Meta-Object Protocol
  • Rewrite the Groovy grammar from scratch with Antlr 4
  • Retrofitting Groovy closures to accomodate JDK 8 upcoming closures for interoperability

Other topics we could consider for Groovy

...

2.

...

x and beyond

  • compiler related:
    • investigate the integration of the Eclipse joint compiler to replace the Groovy stub-based joint compiler
    • investigate making the groovyc compiler multithreaded
  • a treturn keyword for tail calls for closures and methods
  • Incremental compiler
  • Improved runtime performance
  • ability to pass expression trees / AST nodes as parameters (see C# 4's own expression tree)
  • lexical categories
  • a symbol concept, a bit like Ruby's :symbol, or like Java interned strings
  • co-routines and/or generators
  • tail-call recursion
  • pattern matching
  • parser combinators
  • a native template engine compiling to AST (faster, correct line numbers for error reporting, optimized outputting, etc.)
  • ...