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.
Type de document :
Communication dans un congrès
ACM SIGPLAN. 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. 33 Issue 10, pp.166--178, ACM SIGPLAN Notices. 〈10.1145/286936.286955〉
Liste complète des métadonnées

Littérature citée [25 références]  Voir  Masquer  Télécharger

https://hal.inria.fr/hal-01154180
Contributeur : Luigi Liquori <>
Soumis le : jeudi 21 mai 2015 - 12:07:52
Dernière modification le : samedi 27 janvier 2018 - 01:30:58
Document(s) archivé(s) le : jeudi 20 avril 2017 - 06:00:15

Fichier

1998-oopsla-98.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

Collections

Citation

Pietro Di Gianantonio, Furio Honsell, Luigi Liquori. A Lambda Calculus of Objects with Self-Inflicted Extension. ACM SIGPLAN. 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. 33 Issue 10, pp.166--178, ACM SIGPLAN Notices. 〈10.1145/286936.286955〉. 〈hal-01154180〉

Partager

Métriques

Consultations de la notice

230

Téléchargements de fichiers

45