đź“ťCompiling with continuations resources
Papers
Some papers are directly related to CPS, but some other are only tangentially related (e.g., they are mentioned in other CPS papers).
1975 Call-by-name, call-by-value and the λ-calculus (Plotkin)
1989 Continuation-passing, closure-passing style (Appel, Jim)
1992 Compiling with Continuations (Appel) Appel1992
1992 Representing control: A study of the CPS transformation (Danvy, Filinski)
1992 Reasoning about programs in continuation-passing style (Sabry, Felleisen)
1993 The essence of compiling with continuations (Flanagan, Sabryy, Duba, Felleisen) Flanagan…1993
1994 Call-by-need and continuation-passing style (Okasaki, Lee, Tarditi)
1995 A correspondence between continuation passing style and static single assignment form (Kelsey)
1997 Shrinking lambda expression in linear time (Appel, Jim)
1997 A reflection on call-by-value (Sabry, Wadler)
1998 SSA is functional programming (Appel)
2001 Contification using dominators (Fluet, Weeks)
2002 Comparing Control Constructs by Double-Barrelled CPS (Thielecke)
2002 Secrets of the Glasgow Haskell Compiler inliner (Peyton Jones, Marlow)
2007 Compiling with continuations, continued (Kennedy) Kennedy2007
2016 Gentrification gone too far? affordable 2nd-class values for fun and (co-)effect (Osvald, Essertel, Wu, González Alayón, Rompf)
2017 Compiling without continuations (Maurer, Downen, Ariola, Peyton Jones) Maurer…2017
2017 Continuation passing style for effect handlers (Hillerström, Lindley, Atkey, Sivaramakrishnan, Miller)
2018 Compiling with Continuations and LLVM (Farvardin, Reppy)
2019 Compiling with Continuations, or without? Whatever. (Cong, Osvald, Essertel, Rompf)
2021 Compiling with continuations, correctly (Paraskevopoulou, Grover)
Other
How to compile with continuations—a shorter introduction