Skip to Main content Skip to Navigation

Débogage symbolique multi-langages pour les plates-formes d'exécution généralistes

Damien Ciabrini 1
1 MIMOSA - Migration and mobility : semantics and applications
CRISAM - Inria Sophia Antipolis - Méditerranée , Université de Provence - Aix-Marseille 1, MINES ParisTech - École nationale supérieure des mines de Paris
Abstract : This thesis is devoted to improving symbolic debuggers so that they can deal with the specifics of high-level languages, in particular their complex compilation to general-purpose execution platforms. This has led to the implementation of Bugloo, a language-agnostic debugger for the Java virtual machine.

Two novels virtualization mechanisms are introduced in order to mask artifacts that show up in the stack due to the compilation of high-level languages. The first one is an algorithm that uses special rules designed by language implementors to maintain a mapping between the source code of a program and the code generated during its compilation. It allows the debugger to reconstruct a logical view of the stack into which the compilation details have been filtered out. The second mechanism provides a means to control single stepping, in order to disallow execution to stop in intermediate functions that were generated by the compiler. These virtualization mecanisms have been implemented in a memory profiler for producing special statistics that only contain user-level functions.

During this work, a complete debugging support has been developed for Bigloo, a dialect of the functional language Scheme. Other experiments have been conducted on the high-level languages ECMAScript and Python. Results show that our virtualization mecanisms can be efficiently applied whatever the compilation scheme is. Moreover, they remain effective when programs are composed of several high-level languages.
Document type :
Complete list of metadatas

Cited literature [10 references]  Display  Hide  Download
Contributor : Damien Ciabrini <>
Submitted on : Thursday, January 4, 2007 - 10:50:15 PM
Last modification on : Saturday, October 3, 2020 - 3:12:36 AM
Long-term archiving on: : Tuesday, April 6, 2010 - 8:18:04 PM


  • HAL Id : tel-00122789, version 1


Damien Ciabrini. Débogage symbolique multi-langages pour les plates-formes d'exécution généralistes. Autre [cs.OH]. Université Nice Sophia Antipolis, 2006. Français. ⟨tel-00122789⟩



Record views


Files downloads