Please enable JavaScript in your browser!
Startsida
Utforska
Hjälp
Logga in
Matt
/
compilersnotes
Bevaka
1
Stjärnmärk
0
Fork
0
Kod
Ärenden
0
Pull-förfrågningar
0
Incheckningar
1
Släpp
0
Wiki
Ingen beskrivning
Gren:
master
Grenar
Taggar
master
compilersnotes
/
compwocont.md
compwocont.md
769B
Permalänk
Historik
Rå
Summarise Contribution & Motivation
Both CPS and ANF inhibit some optimisations
Aim to get benefits of both
Extend direct-style lambda calculus by adding join points
How to infer join points
Join points can be recursive which gives new optimisation
Show that approach works in GHC
Methodology
Define new intermediate language Fj
Perform single pass to find let bindings that are join points
These are let bound functions that will never be captured in closure
This is simpler than contification because they only look for tail calls
Critical Assessment
Achieves big reduction in allocations for some programs
Other programs lose out on potential optimisations
Transformations can be applied broadly, even to call by value languages