作者
Cyrus Omar, Ian Voysey, Michael Hilton, Jonathan Aldrich, Matthew A Hammer
发表日期
2017/1/1
期刊
ACM SIGPLAN Notices
卷号
52
期号
1
页码范围
86-99
出版商
ACM
简介
Structure editors allow programmers to edit the tree structure of a program directly. This can have cognitive benefits, particularly for novice and end-user programmers. It also simplifies matters for tool designers, because they do not need to contend with malformed program text.
This paper introduces Hazelnut, a structure editor based on a small bidirectionally typed lambda calculus extended with holes and a cursor. Hazelnut goes one step beyond syntactic well-formedness: its edit actions operate over statically meaningful incomplete terms. Naïvely, this would force the programmer to construct terms in a rigid "outside-in" manner. To avoid this problem, the action semantics automatically places terms assigned a type that is inconsistent with the expected type inside a hole. This meaningfully defers the type consistency check until the term inside the hole is finished.
Hazelnut is not intended as an end-user tool itself …
引用总数
201620172018201920202021202220232024198971110133
学术搜索中的文章
C Omar, I Voysey, M Hilton, J Aldrich, MA Hammer - ACM SIGPLAN Notices, 2017