ICFP 2023 (series) / OCaml 2023 (series) / OCaml Users and Developers Workshop 2023 /
Flambda 2 Types: An abstract domain for static analysis of functional programs
In this talk, we will present an overview of the abstract domains that drive the Flambda 2 optimizer for OCaml programs. Like most optimizing compilers, Flambda 2 relies on static analysis to find optimization opportunities. There are several different analyses that are actually performed, here we will focus on a forward value analysis that we call Flambda 2 Types. Despite its name, it fits quite well the definition of an abstract domain (in the sense of abstract interpretation), and it is through that angle that we will introduce it.
(icfp23-ocaml-paper12.pdf) | 99KiB |
(flambda2_abstract_domain.pdf) | 215KiB |