skip to main content
10.1145/3605155.3605863acmconferencesArticle/Chapter ViewAbstractPublication PagesisstaConference Proceedingsconference-collections
research-article

Program State Visualizer with User-Defined Representation Conversion (WIP)

Published: 17 July 2023 Publication History

Abstract

Conventional non-visual tree-based debuggers possess comprehensibility issues, which include the obscurity of object references, patterns, and overall program structure. Visual debuggers — specifically, ones that display an object diagram to represent the program state — alleviate these issues for imperative programming languages whose very states are directly manipulated by the programmer’s statements. However, these debuggers are also prone to clutter when representing large program states from visualizing too much information. Additionally, the visualized program state can often differ from its conceptual abstraction on paper. We propose user-defined representation conversion which allows users to convert concrete representations of program states to their more focused and abstracted conceptual versions. We design a DSL such that users can specify conversions to manipulate displayed nodes and edges based on object types, references, values, or debugger halt locations. We implemented a prototype of this concept for Java.

References

[1]
Fahad Alhumaidan and Nazir Ahmad Zafar. 2014. Possible improvements in UML behavior diagrams. In 2014 International Conference on Computational Science and Computational Intelligence. 2, 173–178. https://doi.org/10.1109/CSCI.2014.113
[2]
Jens Bennedsen and Carsten Schulte. 2010. BlueJ visual debugger for learning the execution of object-oriented programs? ACM Transactions on Computing Education (TOCE), 10, 2 (2010), 1–22. https://doi.org/10.1145/1789934.1789938
[3]
Rod M Burstall, David B MacQueen, and Donald T Sannella. 1980. HOPE: An experimental applicative language. In Proceedings of the 1980 ACM conference on LISP and functional programming. 136–143. https://doi.org/10.1145/800087.802799
[4]
Miguel Cazorla and Diego Viejo. 2015. JavaVis: An integrated computer vision library for teaching computer vision. Computer Applications in Engineering Education, 23, 2 (2015), 258–267. https://doi.org/10.1002/cae.21594
[5]
Lukas Holy, Kamil Jezek, Jaroslav Snajberk, and Premek Brada. 2012. Lowering visual clutter in large component diagrams. In 2012 16th International Conference on Information Visualisation. 36–41. https://doi.org/10.1109/IV.2012.17
[6]
Demian Lessa, Jeffrey K Czyz, and Bharat Jayaraman. 2010. JIVE: A pedagogic tool for visualizing the execution of Java programs. Bericht, Univ. of New York, Buffalo.
[7]
Marjan Mernik, Jan Heering, and Anthony M Sloane. 2005. When and how to develop domain-specific languages. ACM computing surveys (CSUR), 37, 4 (2005), 316–344. https://doi.org/10.1145/1118890.1118892
[8]
Cristóbal Pareja-Flores, Jamie Urquiza-Fuentes, and J Angel Velázquez-Iturbide. 2007. WinHIPE: An IDE for functional programming based on rewriting and visualization. ACM SIGPLAN Notices, 42, 3 (2007), 14–23. https://doi.org/10.1145/1273039.1273042
[9]
Marco Torchiano. 2004. Empirical assessment of UML static object diagrams. In Proceedings. 12th IEEE International Workshop on Program Comprehension, 2004. 226–230. https://doi.org/10.1109/WPC.2004.1311064
[10]
Marco Torchiano, Giuseppe Scanniello, Filippo Ricca, Gianna Reggio, and Maurizio Leotta. 2017. Do UML object diagrams affect design comprehensibility? Results from a family of four controlled experiments. Journal of Visual Languages & Computing, 41 (2017), 10–21. https://doi.org/10.1016/j.jvlc.2017.06.002
[11]
JÁ Velázquez-Iturbide and Antonio Presa-Vázquez. 1999. Customization of visualizations in a functional programming environment. In FIE’99 Frontiers in Education. 29th Annual Frontiers in Education Conference. Designing the Future of Science and Engineering Education. Conference Proceedings (IEEE Cat. No. 99CH37011. 2, 12B3–22. https://doi.org/10.1109/FIE.1999.841580

Cited By

View all

Recommendations

Comments

Information & Contributors

Information

Published In

cover image ACM Conferences
DEBT 2023: Proceedings of the 1st ACM International Workshop on Future Debugging Techniques
July 2023
30 pages
ISBN:9798400702457
DOI:10.1145/3605155
Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than the author(s) must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected].

Sponsors

Publisher

Association for Computing Machinery

New York, NY, United States

Publication History

Published: 17 July 2023

Permissions

Request permissions for this article.

Check for updates

Author Tags

  1. domain-specific language
  2. representation conversion
  3. visual debugger

Qualifiers

  • Research-article

Conference

DEBT '23
Sponsor:

Contributors

Other Metrics

Bibliometrics & Citations

Bibliometrics

Article Metrics

  • 0
    Total Citations
  • 59
    Total Downloads
  • Downloads (Last 12 months)33
  • Downloads (Last 6 weeks)3
Reflects downloads up to 07 Mar 2025

Other Metrics

Citations

Cited By

View all

View Options

Login options

View options

PDF

View or Download as a PDF file.

PDF

eReader

View online with eReader.

eReader

Figures

Tables

Media

Share

Share

Share this Publication link

Share on social media