Abstract Interpretation in Scala
Scala sources illustrating basic concepts of Abstract Interpretation:
- DiGraphs.scala - graphs
- SimpleCFG.scala - simple control-flow graphs
- SimpleAST.scala - simple abstract syntax tre
- SimpleTranslate.scala - translation from AST to CFG
- Lattices.scala - lattices with some examples, and definition of product
- DataFlowAnalysis.scala - simplest fixpoint iteration algorithm parameterized by transfer functions i.e. by sp#
- ConcreteAnalysis.scala - transfer functions for Collecting Semantics
- SignAnalysis.scala - transfer functions for sign analysis