Lorgnette: Creating Malleable Code Projections & Object-centric Debugging: Lowering the Cost of Debugging for Object-oriented Programs

by Camille Gobert & Valentin Bourcier
05/12/2024
DiverSE Coffee
Rennes, France

Abstract

Lorgnette: Creating Malleable Code Projections, by Camille Gobert

Projections of computer languages are tools that help users interact with representations that better fit their needs than plain text. We collected 62 projections from the literature and from a design workshop and found that 60% of them can be implemented using a table, a graph or a form. However, projections are often hard-coded for specific languages and situations, and in most cases only the developers of a code editor can create or adapt projections, leaving no room for appropriation by their users. We introduce lorgnette, a new framework for letting programmers augment their code editor with projections. We demonstrate five examples that use lorgnette to create projections that can be reused in new contexts. We discuss how this approach could help democratise projections and conclude with future work.

Object-centric Debugging: Lowering the Cost of Debugging for Object-oriented Programs, by Valentin Bourcier

Understanding how interconnected objects behave and evolve over time is essential to debug object-oriented programs. However, this process can be tedious due to the lack of explicit methods for identifying relevant objects and visualizing their interactions. To tackle these challenges, researchers proposed object-centric debugging, an approach that consist in focusing debugging operations on objects rather than source code. In my research, I aim to study and develop the object-centric debugging approach and to create tools (debuggers) to support it. In this talk, I will outline my research direction and highlight specific contributions aiming to address these issues.