Polymorphism by name for references and continuations

Abstract : This article investigates an ML-like language with by-name semantics for polymorphism: polymorphic objects are not evaluated once for all at generalization time, but re-evaluated at each specialization. Unlike the standard ML semantics, the by-name semantics works well with polymorphic references and polymorphic continuations: the naive typing rules for references and for continuations are sound with respect to this semantics. Poly-morphism by name leads to a better integration of these imperative features into the ML type discipline. Practical experience shows that it retains most of the efficiency and predictability of polymorphism by value.
Document type :
Conference papers
Complete list of metadatas

Cited literature [23 references]  Display  Hide  Download

https://hal.inria.fr/hal-01499970
Contributor : Xavier Leroy <>
Submitted on : Saturday, April 1, 2017 - 7:54:08 PM
Last modification on : Friday, May 25, 2018 - 12:02:03 PM
Long-term archiving on : Sunday, July 2, 2017 - 12:59:11 PM

File

polymorphism-by-name.pdf
Files produced by the author(s)

Identifiers

Collections

Citation

Xavier Leroy. Polymorphism by name for references and continuations. POPL 1993: 20th symposium Principles of Programming Languages, Jan 1993, Charleston, United States. pp.220-231, ⟨10.1145/158511.158632⟩. ⟨hal-01499970⟩

Share

Metrics

Record views

303

Files downloads

110