Abstract Interpretation Of Functional Programs Using An Attribute Grammar System
Stc
Date: 2008-03-27
Time: 12:00
Room: BBL room 471
Speaker: Jeroen Fokker
Title: Abstract interpretation of functional programs using an attribute grammar system
Abstract
We describe an algorithm for abstract interpretation of an
intermediate language in a Haskell compiler,
itself also written in Haskell. It computes approximations of
possible values for all
variables in the program, which can be used for optimizing the object code.
The analysis is done by collecting constraints on variables, which
are then solved by fixpoint iteration.
The set of constraints grows while solving, as possible values of
unknown functions become known.
The constraints are collected by decorating the abstract syntax tree
with an attribute grammar based preprocessor for Haskell. An
introduction to this preprocessor is also given.