Live functional programming with typed holes
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 …
with continuous feedback about a program's dynamic behavior as it is being edited. The …
Language-parametric static semantic code completion
DAA Pelsmaeker, H van Antwerpen… - Proceedings of the …, 2022 - dl.acm.org
Code completion is an editor service in IDEs that proposes code fragments for the user to
insert at the caret position in their code. Code completion should be sound and complete. It …
insert at the caret position in their code. Code completion should be sound and complete. It …
A Study of Editor Features in a Creative Coding Classroom
Creative coding is a rapidly expanding domain for both artistic expression and
computational education. Numerous libraries and IDEs support creative coding, however …
computational education. Numerous libraries and IDEs support creative coding, however …
PL and HCI: Better together
PL and HCI: better together Page 1 98 COMMUNICATIONS OF THE ACM | AUGUST 2021 |
VOL. 64 | NO. 8 review articles IN THE LAST 10 years, the computer science (CS) community …
VOL. 64 | NO. 8 review articles IN THE LAST 10 years, the computer science (CS) community …
Filling typed holes with live GUIs
Text editing is powerful, but some types of expressions are more naturally represented and
manipulated graphically. Examples include expressions that compute colors, music …
manipulated graphically. Examples include expressions that compute colors, music …
Abstract debuggers: Exploring program behaviors using static analysis results
Traditional, or concrete, debuggers allow developers to step through programs and explore
the corresponding concrete program states—developers can query current values of …
the corresponding concrete program states—developers can query current values of …
Total type error localization and recovery with holes
E Zhao, R Maroof, A Dukkipati, A Blinn, Z Pan… - Proceedings of the …, 2024 - dl.acm.org
Type systems typically only define the conditions under which an expression is well-typed,
leaving ill-typed expressions formally meaningless. This approach is insufficient as the basis …
leaving ill-typed expressions formally meaningless. This approach is insufficient as the basis …
Vision: the next 700 language workbenches
M Barash - Proceedings of the 14th ACM SIGPLAN International …, 2021 - dl.acm.org
Language workbenches (LWBs) are tools to define software languages together with
tailored Integrated Development Environments for them. A comprehensive review of …
tailored Integrated Development Environments for them. A comprehensive review of …
An integrative human-centered architecture for interactive programming assistants
Programming has become a collaboration between human programmers, who drive intent,
and interactive assistants that suggest contextually relevant editor actions. There has been …
and interactive assistants that suggest contextually relevant editor actions. There has been …
Live Pattern Matching with Typed Holes
Y Yuan, S Guest, E Griffis, H Potter, D Moon… - Proceedings of the ACM …, 2023 - dl.acm.org
Several modern programming systems, including GHC Haskell, Agda, Idris, and Hazel,
support typed holes. Assigning static and, to varying degree, dynamic meaning to programs …
support typed holes. Assigning static and, to varying degree, dynamic meaning to programs …