Deep dive into the Groovy compiler
Groovy is a compiled language for the JVM with a number of fascinating features: a language which is both dynamic and static, strongly or weakly typed, functional and imperative, supporting a modern type inference, DSLs, … How does that all come together? How, from a source file, do you end up with classes compiled and loaded at runtime? If terms like parsing, abstract syntax tree, type checking, type inference, bytecode or even verifier puzzle you, then this talk is made for you!
Cédric Champeau is principal engineer at Gradle, Inc. and works on improving the open source project of the same name. He is also a core committer of Apache Groovy and spent more than 3 years developing full time the language at Pivotal, where he implemented features like the static compiler, traits, Android support, AST transformations or type checking extensions.
Prior to that, he spent several years in the industry as a user, where he used Groovy in multiple industrial contexts including DSLs for natural language processing, scripting or even workflows.