Martin Odersky's book "Programming in scala" explains the reason why scalac seems slow (p. 114):
The reason is that every time the compiler starts up, it spends time scanning the contents of the jar files and doing other initial work until it even looks at the fresh source files that you send to it.
What is the compilation efficiency when scanning jar files every time you start any compilation? Indeed, if most developers use FSC (Fast Scala compiler) to avoid this default behavior, why didn't the Scala authors remove these checks?
Why does javac not work?
source share