Trace-based debugging for advanced-dispatching programming languages

Christoph Bockisch, Marnix Van Riet, Haihan Yin, Mehmet Aksit, Ziyi Lin, Yuting Chen, Jianjun Zhao

Research output: Chapter in Book/Report/Conference proceedingConference contribution

1 Citation (Scopus)

Abstract

Advanced-dispatching programming languages allow to implicitly alter the behaviour of a program, depending on runtime program context. While this improves modularity, it also impedes comprehensibility. The use of advanced-dispatching programming languages can give rise to complex debugging scenarios, which cannot efficiently be resolved with traditional debugging approaches such as breakpoint-based debugging. Therefore, tool support for analysing the full history of runtime behaviour of advanced-dispatching programs is of importance for efficient debugging. In this paper, we characterise debugging scenarios for which existing work does not apply well, because they require access to the program execution history for efficient resolution. We present our design and implementation of a trace-based debugger for advanced-dispatching that supports such debugging scenarios efficiently. Our approach is the first one based on an XML-representation of the execution trace, giving rise to using very powerful standard tools such as the XQuery language for searching and navigating the trace, or scalable visualisations such as tree-maps.

Original languageEnglish
Title of host publicationProceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS 2015
PublisherAssociation for Computing Machinery, Inc
ISBN (Electronic)9781450336574
DOIs
Publication statusPublished - Jul 4 2015
Externally publishedYes
Event10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS 2015 - Prague, Czech Republic
Duration: Jul 4 2015Jul 10 2015

Publication series

NameProceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS 2015

Other

Other10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS 2015
CountryCzech Republic
CityPrague
Period7/4/157/10/15

    Fingerprint

All Science Journal Classification (ASJC) codes

  • Computational Theory and Mathematics
  • Computer Science Applications
  • Theoretical Computer Science

Cite this

Bockisch, C., Van Riet, M., Yin, H., Aksit, M., Lin, Z., Chen, Y., & Zhao, J. (2015). Trace-based debugging for advanced-dispatching programming languages. In Proceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS 2015 [3] (Proceedings of the 10th Workshop on Implementation, Compilation, Optimization of Object-Oriented Languages, Programs and Systems, ICOOOLPS 2015). Association for Computing Machinery, Inc. https://doi.org/10.1145/2843915.2843922