Write a Blog >>
ICFP 2020
Thu 20 - Fri 28 August 2020
Fri 28 Aug 2020 13:14 - 13:36 at HIW - Session 3

We want to share our experience and results of working on a static analysis tool for Haskell projects, which itself is written in Haskell:

https://github.com/kowainik/stan

Stan is a Haskell Static Analyser. It uses a novel approach to static analysis based on the HIE files — compile-time information about Haskell source code gathered and recorded by GHC. The HIE files contain types and detailed information about all identifiers in modules. Usage of the HIE files unleashes the full power of static analysis and opens opportunities for sophisticated and non-trivial checks. Additionally, Stan’s approach allows it to provide insightful and robust analysis for projects of a different variety.

In the talk about Stan, we want to share the project goals and implementation details, specifically:

  • Stan implementation of Type and AST patterns using the final tagless technique
  • Integration with Cabal and collecting of information from multiple sources
  • Flexible configuration via TOML or CLI
  • Usage of algebraic typeclasses and new abstractions to capture the whole runtime environment

Also, we will demonstrate how Stan works on real-world projects and showcase Stan advantages that could benefit the Haskell ecosystem.

Fri 28 Aug

Displayed time zone: Eastern Time (US & Canada) change

12:30 - 13:30
Session 3HIW at HIW
12:30
22m
Talk
Exactprint in GHC
HIW
12:52
22m
Talk
Liquid Haskell as a GHC Plugin
HIW
Alfredo Di Napoli Well-Typed LLP, Ranjit Jhala University of California at San Diego, USA, Andres Löh Well-Typed LLP, Niki Vazou IMDEA Software Institute
13:14
22m
Talk
Stan — Haskell Static Analyser
HIW
Dmitrii Kovanikov Standard Chartered, Veronika Romashkina None