SpaceTime Programming: Live and Omniscient Exploration of Code and Execution

Fuente: arXiv
Guardado en:
Detalles Bibliográficos
Autores principales: Döderlein, Jean-Baptiste, Khelladi, Djamel Eddine, Acher, Mathieu, Combemale, Benoit
Formato: Preprint
Publicado: 2026
Materias:
Acceso en línea:
Etiquetas: Agregar Etiqueta
Sin Etiquetas, Sea el primero en etiquetar este registro!
_version_ 1866917352953610240
author Döderlein, Jean-Baptiste
Khelladi, Djamel Eddine
Acher, Mathieu
Combemale, Benoit
author_facet Döderlein, Jean-Baptiste
Khelladi, Djamel Eddine
Acher, Mathieu
Combemale, Benoit
contents Programming environments typically separate the world of static code from the dynamic execution of programs. Developers must switch between writing code and observing its execution, often with limited tools to understand the relationship between code changes and runtime behavior. Several paradigms and approaches exist to bridge this gap, including exploratory programming for comparing code variants, live programming for immediate feedback, and omniscient debugging for exploring execution history. However, existing solutions tend to focus on specific aspects and one specific paradigm rather than providing a fully integrated environment with multiple capabilities. This paper introduces \spacetime Programming, a novel approach that unifies these paradigms to create a programming model for exploring both code modifications and execution flow. At the core of our approach is a trace mechanism that captures not only execution state but also the corresponding code changes, enabling developers to explore programs in both space (code variants) and time (execution flow). As a proof of concept, we implemented a Python library supporting SpaceTime Programming and applied it in two contexts: a live omniscient debugger and a Pygame game development tool, showcased through a Flappy Bird-like game. We further evaluated SpaceTimePy on five real-world Python projects, finding performance overhead ranging from 35% to 150% on test suites.
format Preprint
id arxiv_https___arxiv_org_abs_2603_18735
institution arXiv
publishDate 2026
record_format arxiv
spellingShingle SpaceTime Programming: Live and Omniscient Exploration of Code and Execution
Döderlein, Jean-Baptiste
Khelladi, Djamel Eddine
Acher, Mathieu
Combemale, Benoit
Software Engineering
Programming environments typically separate the world of static code from the dynamic execution of programs. Developers must switch between writing code and observing its execution, often with limited tools to understand the relationship between code changes and runtime behavior. Several paradigms and approaches exist to bridge this gap, including exploratory programming for comparing code variants, live programming for immediate feedback, and omniscient debugging for exploring execution history. However, existing solutions tend to focus on specific aspects and one specific paradigm rather than providing a fully integrated environment with multiple capabilities. This paper introduces \spacetime Programming, a novel approach that unifies these paradigms to create a programming model for exploring both code modifications and execution flow. At the core of our approach is a trace mechanism that captures not only execution state but also the corresponding code changes, enabling developers to explore programs in both space (code variants) and time (execution flow). As a proof of concept, we implemented a Python library supporting SpaceTime Programming and applied it in two contexts: a live omniscient debugger and a Pygame game development tool, showcased through a Flappy Bird-like game. We further evaluated SpaceTimePy on five real-world Python projects, finding performance overhead ranging from 35% to 150% on test suites.
title SpaceTime Programming: Live and Omniscient Exploration of Code and Execution
topic Software Engineering
url https://arxiv.org/abs/2603.18735