Abstract
Structure editors make syntax errors impossible, but they still allow construction of programs with incomplete semantics, leading to program states that cannot be evaluated. We introduce a structure editor calculus for a simple functional programming language that allows for incomplete programs. Our editor expressions may interleave construction and evaluation of programs and can thus describe the history of the development of a program. We extend our editor calculus with types and define a resource-aware type system that prohibits editor expressions introducing type errors in the abstract syntax tree and prove that the type system is sound.
Original language | English |
---|---|
Title of host publication | PEPM 2021 - Proceedings of the 2021 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, Co-located with POPL 2021 |
Number of pages | 13 |
Publisher | Association for Computing Machinery |
Publication date | 18 Jan 2021 |
Pages | 1-13 |
ISBN (Electronic) | 9781450383059 |
DOIs | |
Publication status | Published - 18 Jan 2021 |
Event | 2021 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2021, co-located with the Annual Symposium on Principles of Programming Languages, POPL 2021 - Virtual, Online, Denmark Duration: 18 Jan 2021 → 19 Jan 2021 |
Conference
Conference | 2021 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, PEPM 2021, co-located with the Annual Symposium on Principles of Programming Languages, POPL 2021 |
---|---|
Country/Territory | Denmark |
City | Virtual, Online |
Period | 18/01/2021 → 19/01/2021 |
Sponsor | ACM SIGPLAN |
Series | PEPM 2021 - Proceedings of the 2021 ACM SIGPLAN Workshop on Partial Evaluation and Program Manipulation, Co-located with POPL 2021 |
---|
Bibliographical note
Publisher Copyright:© 2021 ACM.
Keywords
- functional programming
- structure editors
- type systems