Handles: Behavior-Propagating First Class References For Dynamically-Typed Languages

Jean-Baptiste Arnaud 1 Stéphane Ducasse 1 Marcus Denker 1 Camille Teruel 1
1 RMOD - Analyses and Languages Constructs for Object-Oriented Application Evolution
LIFL - Laboratoire d'Informatique Fondamentale de Lille, Inria Lille - Nord Europe
Abstract : Controlling object graphs and giving specific semantics to references (such as read-only, ownership, scoped sharing) have been the focus of a large body of research in the context of static type systems. Controlling references to single objects and to graphs of objects is essential to build more secure systems, but is notoriously hard to achieve in the absence of static type systems. In this article we embrace this challenge by proposing a solution to the following question: What is an underlying mechanism that can support the definition of properties (such as revocable, read-only, lent) at the reference level in the absence of a static type system? We present handles: first-class references that propagate behavioral change dynamically to the object subgraph during program execution. In this article we describe handles and show how handles support the implementation of read-only references and revocable references. Handles have been fully implemented by modifying an existing virtual machine and we report their costs.
Type de document :
Article dans une revue
Journal of Science of Computer Programming, elsevier, 2015, Science of Computer Programming, 98 (3), pp. 318-338. <10.1016/j.scico.2014.07.011>
Liste complète des métadonnées

https://hal.inria.fr/hal-01060537
Contributeur : Lse Lse <>
Soumis le : jeudi 31 décembre 2015 - 16:31:11
Dernière modification le : mercredi 22 mars 2017 - 01:10:49
Document(s) archivé(s) le : mardi 5 avril 2016 - 13:48:50

Fichier

2015Handles.pdf
Fichiers produits par l'(les) auteur(s)

Identifiants

Citation

Jean-Baptiste Arnaud, Stéphane Ducasse, Marcus Denker, Camille Teruel. Handles: Behavior-Propagating First Class References For Dynamically-Typed Languages. Journal of Science of Computer Programming, elsevier, 2015, Science of Computer Programming, 98 (3), pp. 318-338. <10.1016/j.scico.2014.07.011>. <hal-01060537v2>

Partager

Métriques

Consultations de
la notice

328

Téléchargements du document

45