Abstract
First-class functions dramatically increase expressiveness, at the expense of static guarantees. In ALGOL or PASCAL, functions could be passed as arguments but never escape their defining scope. Therefore, function arguments could serve as temporary access tokens or capabilities, enabling callees to perform some action, but only for the duration of the call. In modern languages, such programming patterns are no longer available. The central thrust of this paper is to re-introduce second-class functions and other values alongside first-class entities in modern languages. We formalize second-class values with stack-bounded lifetimes as an extension to simply-typed λ calculus, and for richer type systems such as F
Author supplied keywords
Cite
CITATION STYLE
Osvald, L., Essertel, G., Wu, X., Alayón, L. I. G., & Rompf, T. (2016). Gentrification gone too far? affordable 2nd-class values for fun and (co-)effect. ACM SIGPLAN Notices, 51(10), 234–251. https://doi.org/10.1145/2983990.2984009
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.