Saved in:
Bibliographic Details
Main Authors: Whitington, John, Ridge, Tom
Format: Preprint
Published: 2024
Subjects:
Online Access:https://arxiv.org/abs/2411.00618
Tags: Add Tag
No Tags, Be the first to tag this record!
_version_ 1866915001802948608
author Whitington, John
Ridge, Tom
author_facet Whitington, John
Ridge, Tom
contents In this position paper, we present a prototype of a visualizer for functional programs. Such programs, whose evaluation model is the reduction of an expression to a value through repeated application of rewriting rules, and which tend to make little or no use of mutable state, are amenable to visualization in the same fashion as simple mathematical expressions, with which every schoolchild is familiar. We show how such visualizations may be produced for the strict functional language OCaml, by direct interpretation of the abstract syntax tree and appropriate pretty-printing. We describe (and begin to address) the challenges of presenting such program traces in limited space and of identifying their essential elements, so that our methods will one day be practical for more than toy programs. We consider the problems posed by the parts of modern functional programming which are not purely functional such as mutable state, input/output and exceptions. We describe initial work on the use of such visualizations to address the problem of program debugging, which is our ultimate aim.
format Preprint
id arxiv_https___arxiv_org_abs_2411_00618
institution arXiv
publishDate 2024
record_format arxiv
spellingShingle Visualizing the Evaluation of Functional Programs for Debugging
Whitington, John
Ridge, Tom
Programming Languages
D.2.5
In this position paper, we present a prototype of a visualizer for functional programs. Such programs, whose evaluation model is the reduction of an expression to a value through repeated application of rewriting rules, and which tend to make little or no use of mutable state, are amenable to visualization in the same fashion as simple mathematical expressions, with which every schoolchild is familiar. We show how such visualizations may be produced for the strict functional language OCaml, by direct interpretation of the abstract syntax tree and appropriate pretty-printing. We describe (and begin to address) the challenges of presenting such program traces in limited space and of identifying their essential elements, so that our methods will one day be practical for more than toy programs. We consider the problems posed by the parts of modern functional programming which are not purely functional such as mutable state, input/output and exceptions. We describe initial work on the use of such visualizations to address the problem of program debugging, which is our ultimate aim.
title Visualizing the Evaluation of Functional Programs for Debugging
topic Programming Languages
D.2.5
url https://arxiv.org/abs/2411.00618