Skip to Main content Skip to Navigation
Conference papers

A Lambda Calculus of Objects with Self-Inflicted Extension

Abstract : In this paper we investigate, in the context of functional prototype-based languages, objects which might extend themselves upon receiving a message. The possibility for an object of extending its own " self " , referred to by Cardelli, as a self-inflicted operation, is novel in the context of typed object-based languages. We present a sound type system for this calculus which guarantees that evaluating a well-typed expression will never yield a message-not-found run-time error. We give several examples which illustrate the increased expressive power of our system with respect to existing calculi of objects. The new type system allows also for a flexible width-subtyping, still permitting sound method override, and a limited form of object extension. The resulting calculus appears to be a good starting point for a rigorous mathematical analysis of class-based languages.
Complete list of metadata

Cited literature [25 references]  Display  Hide  Download
Contributor : Luigi Liquori <>
Submitted on : Thursday, May 21, 2015 - 12:07:52 PM
Last modification on : Tuesday, November 19, 2019 - 12:19:51 PM
Long-term archiving on: : Thursday, April 20, 2017 - 6:00:15 AM


Files produced by the author(s)




Pietro Di Gianantonio, Furio Honsell, Luigi Liquori. A Lambda Calculus of Objects with Self-Inflicted Extension. Proceedings of the 13th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications, OOPSLA '98, Vancouver, BC, Canada, Oct 1998, Vancouver, BC, Canada. pp.166--178, ⟨10.1145/286936.286955⟩. ⟨hal-01154180⟩



Record views


Files downloads