Groovy is a dynamic, object-oriented programming language for the Java platform similar to python, Ruby, or perl. GPars is a concurrency and parallelism framework for Groovy and Java. It introduces a lot of classes and elements to make parallel programming easier. The most important are:
- Data parallelism: Provides mechanisms that allow you to process data structures in parallel
 - fork/join process: Allows you to implement concurrent algorithms using the divide and conquer technique
 - Actors: Implement a message-passing based concurrency model
 - Dataflow: Allows an alternative concurrency model to process data in a concurrent way
 - Agents: Inspired by the agents provided in the Clojure programming language explained in the first section of this book