The aim of this project is to provide a tool for finding defects in Scala source code by analyzing ASTs during compilation. Think FindBugs for Scala.
Alacs is not ready for serious use, but feel free to try it out.
Once alacs is available to your compiler you can run scalac -help
to get all available options.
Right now, the plugin is not available anywhere other than by source, so the simplest way
to get up and running is currently to clone the alacs repository locally and use sbt package
for creating the .jar
file.
In your actual project, you can simply place the file into your lib/
folder and update your
build.sbt
to include the following:
scalacOptions in ThisBuild ++= Seq(
"-Xplugin:lib/alacs_<ScalaVersion>.jar",
"-Xplugin-require:alacs")
- Build the project with
sbt package
on the command line. scalac -Xplugin:/path/to/alacs/target/scala_2.8.1/alacs_2.8.1-0.0.0-SNAPSHOT.jar -Xplugin-require:alacs foo.scala
There is no special support for IDEs (Eclipse, IntelliJ, Netbeans) yet. For all I know it's really trivial to use compiler plugins with them.
There are two ways to contribute to Alacs:
- Submitting suggestions for bug reports. You can do this on the wiki.
- Writing code (e.g., submitting patches, joining the team, etc.).
Thank you for helping improve Alacs!
This project was originally forked from Yuvi Masory, but most parts have been completely rewritten after the fork.
Changes/Updates to ymasory/alacs
- Removed old pattern 003, as mod by 1 seems to result in 0 during early parsing already
- Fixed open issues of ymasory/alacs: #10, #11, #12, #13, #18