~/talk

TCO

links:none on file
slides:none on file

A source-to-source compiler named ctco transforms Clojure on the JVM by applying CPS, thunkification and trampolining so mutual tail calls execute without growing the JVM stack; factorial and mutually recursive even/odd examples run to large depths without stack overflow. Implementation tags thunks with metadata, auto-inserts recur for simple self-recursion, and trades stack use for heap-allocated continuations so performance is slightly worse and long non-tail recursion can cause heap growth. Work is usable, mostly correct, and being optimized and ported to ClojureScript.

AI-written summary · about

  1. 0:00Intro
  2. 1:09Outline
  3. 4:17Current Year: 1977
  4. 4:48A Sinister Debate
  5. 5:37Setting the Record Straight (Still 1977)
  6. 6:13Tail Calls Are Special
  7. 8:55Tail Calls Are Awesome
  8. 10:09Built-In TCO
  9. 11:29Build It Better
  10. 13:27Big Claim
  11. 17:29Part II: Thunkification
  12. 23:15Part III: Trampolining
  13. 25:41CTCO In Summary
  14. 30:08Costs of CTCO
  15. 31:44Optimizations
  16. 34:22Future Work
  17. 35:50Thank You
~/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.