Live functional programming with typed holes

C Omar, I Voysey, R Chugh, MA Hammer - Proceedings of the ACM on …, 2019 - dl.acm.org
Live programming environments aim to provide programmers (and sometimes audiences)
with continuous feedback about a program's dynamic behavior as it is being edited. The …

Explainable dynamic programming

M Erwig, P Kumar - Journal of Functional Programming, 2021 - cambridge.org
In this paper, we present a method for explaining the results produced by dynamic
programming (DP) algorithms. Our approach is based on retaining a granular representation …

Language-integrated provenance

S Fehrenbach, J Cheney - … of the 18th International Symposium on …, 2016 - dl.acm.org
Provenance, or information about the origin or derivation of data, is important for assessing
the trustworthiness of data and identifying and correcting mistakes. Most prior …

A visual notation for succinct program traces

D Bajaj, M Erwig, D Fedorin - Journal of Computer Languages, 2023 - Elsevier
Program traces are a widely used representation for explaining the dynamic behavior of
programs. They help to make sense of computations and also support the location and …

Adaptable traces for program explanations

D Bajaj, M Erwig, D Fedorin, K Gay - … 2021, Chicago, IL, USA, October 17 …, 2021 - Springer
Program traces are a sound basis for explaining the dynamic behavior of programs. Alas,
program traces can grow big very quickly, even for small programs, which diminishes their …

Explanations for combinatorial optimization problems

M Erwig, P Kumar - Journal of Computer Languages, 2024 - Elsevier
We introduce a representation for generating explanations for the outcomes of combinatorial
optimization algorithms. The two key ideas are (A) to maintain fine-grained representations …

Linked visualisations via Galois dependencies

R Perera, M Nguyen, T Petricek, M Wang - Proceedings of the ACM on …, 2022 - dl.acm.org
We present new language-based dynamic analysis techniques for linking visualisations and
other structured outputs to data in a fine-grained way, allowing users to explore how data …

Language-integrated provenance by trace analysis

S Fehrenbach, J Cheney - Proceedings of the 17th ACM SIGPLAN …, 2019 - dl.acm.org
Language-integrated provenance builds on language-integrated query techniques to make
provenance information explaining query results readily available to programmers. In …

MADMAX: a DSL for explanatory decision making

M Erwig, P Kumar - Proceedings of the 20th ACM SIGPLAN International …, 2021 - dl.acm.org
MADMAX is a Haskell-embedded DSL for multi-attribute, multi-layered decision making. An
important feature of this DSL is the ability to generate explanations of why a computed …

Broadening the View of Live Programmers: Integrating a Cross-Cutting Perspective on Run-Time Behavior into a Live Programming Environment

P Rein, C Flach, S Ramson, E Krebs… - arXiv preprint arXiv …, 2024 - arxiv.org
Live programming provides feedback on run-time behavior by visualizing concrete values of
expressions close to the source code. When using such a local perspective on run-time …