Reflection as a Tool to Debug Objects - Inria - Institut national de recherche en sciences et technologies du numérique Accéder directement au contenu
Communication Dans Un Congrès Année : 2022

Reflection as a Tool to Debug Objects

Résumé

In this paper, we share our experience with using reflection as a systematic tool to build advanced debuggers. We illustrate the usage and combination of reflection techniques for the implementation of object-centric debugging. Objectcentric debugging is a technique for object-oriented systems that scopes debugging operations to specific objects. The implementation of this technique is not straightforward, as there are, to the best of our knowledge, no description in the literature about how to build such debugger. We describe an implementation of object-centric breakpoints. We built these breakpoints with Pharo, a highly reflective system, based on the combination of different classical reflection techniques: proxy, anonymous subclasses, and sub-method partial behavioral reflection. Because this implementation is based on common reflective techniques, it is applicable to other reflective languages and systems for which a set of identified primitives are available.
Fichier principal
Vignette du fichier
2022-Modern-Reflection-techniques-to-debug-object-hal-version.pdf (664.33 Ko) Télécharger le fichier
Origine : Fichiers produits par l'(les) auteur(s)

Dates et versions

hal-03846015 , version 1 (09-11-2022)

Identifiants

Citer

Steven Costiou, Vincent Aranega, Marcus Denker. Reflection as a Tool to Debug Objects. SLE 2022 - 15th ACM SIGPLAN International Conference on Software Language Engineering, Dec 2022, Auckland, New Zealand. ⟨10.1145/3567512.3567517⟩. ⟨hal-03846015⟩
60 Consultations
79 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More