Albert is a PhD student at the Department of Computer Science of the University of Kaiserslautern-Landau, in the AG Softwaretechnik. He is currently working on bringing a static type system based on set-theoretic types to Erlang.
Though Erlang’s type annotations were originally intended for documentation purposes, static analysis tools soon utilized them for semantic checks. However, due to a need for more semantic agreement on Erlang’s type annotations, their results differ in ways that can be challenging for users to interpret. In our session, we cross-compare four state-of-the-art tools (Dialyzer, Gradualizer, eqWAlizer, etylizer) regarding their expressivity and performance. Their unified test suites provide a good starting point to understand their respective capabilities and limitations. Insights into the underlying approaches can help Erlang developers make an educated choice which analysis tool to use for their projects and how to interpret the result of a type check.
Key Takeaways: