CAREER: Live and Direct Programming Environments
CAREER: Live and Direct Programming Environments
批准号:
2238744
负责人:
Cyrus Omar
金额:
$55.0万
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2023
资助国家:
美国
项目状态:
未结题
起止时间:
2023-05-01 至 2028-04-30
中文摘要
点击翻译按钮获取中文摘要
英文摘要
Modern programming environments promise to make coding a less cognitively demanding activity by providing contextualized feedback, suggestions, and editing affordances. However, they can suffer from catastrophic gaps in service when the program being edited is incomplete, i.e., when there are missing pieces or errors. The programmer is left to simulate program behavior on their own in these situations -- a difficult and error-prone task even for professional programmers, and a major barrier to entry for novices. This project's novelties are that it develops a new generation of programming environments that achieve maximal liveness, i.e., that never suffer from these gaps in service. Maximal liveness is achieved by developing a novel direct manipulation code editing interface, tile-based editing, that automatically inserts program holes to maintain a sensible syntactic and semantic structure, even when the program is incomplete. The project's impacts are expected to be measurable decreases in the cognitive demand of educational, professional, and creative coding tasks, which will contribute to lowering the barriers to entry into computing.The key mechanism, tile-based editing, fundamentally restructures code editing to allow for direct manipulation of the linearized projection of a program tree, while maintaining maximal liveness by automatically managing holes and delimiter matching obligations to continuously maintain a syntax tree internally. From there, this project scales up the language-theoretic foundations developed in recent work by the investigator, integrating liveness with modern language features like pattern matching (in languages like Haskell and Elm) and borrowing (in languages like Rust). These target languages feature in the investigator's programming languages courses and in educational resources targeting diverse creative communities, where the research is evaluated. In support of these educational efforts, the project develops novel live tutoring and authoring services that leverage the maximal liveness invariant to provide several novel forms of live, contextualized feedback, assistance, and direct manipulation editing affordances.This award reflects NSF's statutory mission and has been deemed worthy of support through evaluation using the Foundation's intellectual merit and broader impacts review criteria.
期刊论文(2)
专著(0)
科研奖励(0)
会议论文
Live Pattern Matching with Typed Holes
与键入的孔进行实时图案匹配
DOI:
10.1145/3586048
发表时间:
2023
期刊:
Proceedings of the ACM on Programming Languages
影响因子:
--
作者:
[Yuan, Yongwei, Guest, Scott, Griffis, Eric, Potter, Hannah, Moon, David, Omar, Cyrus]
通讯作者:
Omar, Cyrus
DOI:
10.1145/3632910
发表时间:
2024
期刊:
Proceedings of the ACM on Programming Languages
影响因子:
--
作者:
[Zhao, Eric, Maroof, Raef, Dukkipati, Anand, Blinn, Andrew, Pan, Zhiyi, Omar, Cyrus]
通讯作者:
Omar, Cyrus
国内基金
海外基金
虚拟集群Live迁移关键技术研究
-
批准号:61170004
-
项目类别:面上项目
-
资助金额:56.0万元
-
批准年份:2011
-
负责人:魏晓辉
-
依托单位: