We all love Scala, but the one aspect we have a hard time accepting are long compile times. It’s not uncommon for a project to experience compilation times of a handful of minutes, if not worse. On top of that, compilation times are unpredictable, depending on a combination of language features, external libraries, and type annotations. A single line change may increase compilation times ten fold.
Don’t bow to the compiler and accept long compilation times. Rather, understand how the compiler works and optimize your usage of Scala to compile faster!
Iulian Dragos is a Lightbend-certified trainer for Scala and Spark and one of the top committers to the Scala IDE and Scala projects. He has learned Scala by writing the backend for it during his PhD in Martin Odersky's research lab at EPFL, back in 2004, and worked on various parts of the compiler and ecosystem since then. In 2016 he founded Triplequote, a tooling company focused on enterprise needs for Scala.