[FProPer24] Tail Modulo Async/Await
Вставка
- Опубліковано 7 лют 2025
- Tail Modulo Async/Await (Video, FProPer 2024)
Vivien GACHET, Gabriel Radanne, and Ludovic Henrio
(LIP, Lyon, France; Inria; University of Lyon - ENS Lyon - UCBL - CNRS - Inria - LIP)
Abstract: Tail-calls are an essential feature of functional programming languages: they allow to write iterations in a declarative fashion, using simple recursive functions, unbothered by implementation details such as stack space. They work by giving special treatment to function calls in “terminal position”, i.e.~the last thing a function would do. Indeed, such calls never need to be returned from, meaning that adding an entry in the stack is not necessary. Tail-call and tail-recursion, since their introduction in the 70s, have been mainstay in many programming languages and are available in virtually all modern production compilers (C, Rust, Scheme, Haskell, OCaml, …).
In this talk, we consider the treatment of tail call and tail recursions in an Asynchronous context, inspired by the recent work on Tail modulo Cons.
Presentation at the FProPer 2024 workshop, Sept 6, 2024, icfp24.sigplan...
Sponsored by ACM SIGPLAN,