This talk introduces ScalaClean which applies whole program static analysis to larger codebases. By combining data available from ScalaMeta and SemanticDB we are able to generate a full graph of all packages, classes, functions and variables within a codebase. We are able to use graph colouring to provide interesting analysis of the graph to infer dead code and correct visibility scopes. We can apply these changes back to the code reducing the size of the codebase and improves incremental compilation and IDE completions. This talk explores current progress and future direction of this work.
Rory spends his life fighting to find a balance between writing ugly high performance code and beautiful maintainable code. He fights from the trenches to make software better, contributing to open source and has worked across the entire gamut of software from building a JVM to optimising grid computing. He believes that great tools are the key to unlocking the full potential of modern programming languages.