~/talk

Flambda 2 Types: An abstract domain for static analysis of functional programs (mo...

links:none on file
links:none on file
links:none on file
slides:none on file

Flambda 2 implements a forward value analysis as an abstract domain inside the OCaml optimizer, mapping variables to compact value summaries (integers, immutable block shapes, closures and limited unions) and a must-alias structure to enable constant folding, allocation removal and direct-call specialization. Core ops are meet (queries that refine the environment) and join (merging branch environments with targeted diffs), enhanced by environment extensions that encode small function summaries. The analyzer omits full widenings and relies on no fixed points for speed; it is production-quality and scales to large codebases.

AI-written summary · about

  1. 0:00Flambda 2 static analysis intro
  2. 1:28Constraints and pure analyzer
  3. 3:34Verification vs compilation trade-offs
  4. 5:20Compiler optimization properties
  5. 7:07Abstract domain values structure
  6. 10:01Efficient variant and union handling
  7. 11:27Relational info and alias tracking
  8. 13:33Environment propagation and reduced product
  9. 16:09Meet and environment types core ops
  10. 20:54Environment extensions and summaries
  11. 24:11Join ops and precision loss
  12. 26:44Conclusion and production status
~/search
type to search 6,249 conferences, 138,987 speakers and 185,172 talks
~/help
cmdctrl k
search every conference, speaker and series
/
focus the filter search
h
home
c
conferences
s
speakers
e
series
t
light / dark — the status bar button does the same
?
this help
esc
close this, then clear every filter — or just the search, while you are typing in it

Ignored while you are typing. Pages without a filter rail have no search to focus.