Groovy is one of the earlier alternative JVM-based languages. It was originally built to provide a Python-like experience on the JVM, a marvel and an unheard of idea at the time. At its heart, it is a dynamically typed language, meaning that types do not have to be specified when declaring variables, and method calls are resolved at runtime instead of compile time, which add interesting possibilities that will be hard to implement in static languages, such as Java and Kotlin. Groovy is highly unusual, as the programmer can switch the compiler to a statically typed mode for specific classes. In this mode, the compiler checks the types and method calls at compile time, like the compiler of a statically typed language would have done.
The following topics will be covered in this chapter:
- Installing Groovy
- The GroovyConsole and GroovyShell REPL shells
- Groovy language basics
- Object-oriented programming
- The Groovy Development Kit (GDK)
- Dynamic and static programming
- Quiz