A Type-Safe Structure Editor Calculus

被引:2
|
作者
Godiksen, Christian [1 ]
Herrmann, Thomas [1 ]
Huttel, Hans [1 ]
Lauridsen, Mikkel Korup [1 ]
Owliaie, Iman [1 ]
机构
[1] Aalborg Univ, Dept Comp Sci, Aalborg O, Denmark
来源
PEPM '21: PROCEEDINGS OF THE 2021 ACM SIGPLAN WORKSHOP ON PARTIAL EVALUATION AND PROGRAM MANIPULATION | 2021年
关键词
Structure editors; type systems; functional programming;
D O I
10.1145/3441296.3441393
中图分类号
TP31 [计算机软件];
学科分类号
081202 ; 0835 ;
摘要
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.
引用
收藏
页码:1 / 13
页数:13
相关论文
共 50 条
  • [1] A Structure Editor with Type-Safe Copy/Paste
    Andersen, Christoffer Lind
    Nielsen, Anja Elisasen Lumholtz
    Sandberg, Nana Gjerulff
    Huttel, Hans
    Mikkelsen, Peter
    PROCEEDINGS OF THE 2022 34TH SYMPOSIUM ON IMPLEMENTATION AND APPLICATION OF FUNCTIONAL LANGUAGES, IFL 2022, 2022,
  • [2] An update calculus for expressing type-safe program updates
    Erwig, Martin
    Ren, Deling
    SCIENCE OF COMPUTER PROGRAMMING, 2007, 67 (2-3) : 199 - 222
  • [3] Type-safe casting
    Hsieh, Wilson C.
    Fiuczynski, Marc E.
    Pardyak, Przemyslaw
    Bershad, Brian N.
    Software - Practice and Experience, 1998, 28 (11): : 1245 - 1252
  • [4] Type-safe disks
    Sivathanu, Gopalan
    USENIX ASSOCIATION 7TH USENIX SYMPOSIUM ON OPERATING SYSTEMS DESIGN AND IMPLEMENTATION, 2006, : 15 - 28
  • [5] Type-safe cast
    Weirich, S
    JOURNAL OF FUNCTIONAL PROGRAMMING, 2004, 14 : 681 - 695
  • [6] Type-safe method inlining
    Glew, N
    Palsberg, J
    ECOOP 2002 - OBJECT-ORIENTED PROGRAMMING, 2002, 2374 : 525 - 544
  • [7] Type-safe update programming
    Erwig, Martin
    Ren, Deling
    2003, Springer Verlag (2618):
  • [8] Type-safe update programming
    Erwig, M
    Ren, D
    PROGRAMMING LANGUAGES AND SYSTEMS, 2003, 2618 : 269 - 283
  • [9] A type-safe database interface
    Villoing, Florian
    Briot, Emmanuel
    RELIABLE SOFTWARE TECHNOLOGIES - ADA-EUROPE 2008, 2008, 5026 : 144 - 157
  • [10] Type-safe multithreading in Cyclone
    Grossman, D
    ACM SIGPLAN NOTICES, 2003, 38 (03) : 13 - 25