I stumbled across the ScalaCL project and its compiler plugin that has an awesome loop optimizer.
This made me wonder:
Which compiler plugins are available for scala?
Plugins need not be performance improving plugins; any type of plugin is eligible for this list.
(I have done Google searches but the SNR is low for this query.)
Introduction. A compiler plugin is a compiler component that lives in a separate JAR file from the main compiler. The compiler can then load that plugin and gain extra functionality. This tutorial briefly walks you through writing a plugin for the Scala compiler.
The Scala compiler scalac offers various compiler options, or flags, that change the compiler's default behavior. Some options just generate more compiler output in the form of diagnostics or warnings, while others change the result of compilation.
A few plugins are linked from this thread on the mailing list (autoproxy, browse, enhanced strings, avro).
From the Scala team, there is the existing delimited continuations plugin, and a current effort toward an effect system plugin.
Documentation on writing a plugin is here.
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With