课题基金 / 基金详情

FMitF: Track I: End-User Programming with Synthesis-Guided Interaction Models

FMitF: Track I: End-User Programming with Synthesis-Guided Interaction Models
FMITF:第一轨:使用综合引导交互模型的最终用户编程
批准号:
2122950
负责人:
Rastislav Bodik
金额:
$74.97万
依托单位:
依托单位国家:
美国
项目类别:
Standard Grant
财政年份:
2021
资助国家:
美国
项目状态:
已结题
起止时间:
2021-10-01 至 2024-09-30

项目摘要

项目成果

Rastislav Bodik的其他基金

相似基金

相关文献

中文摘要
翻译
电子表格和其他数据分析工具等软件的最终用户通常希望解决超出这些工具内置功能的问题。这类用户面临着“可编程性差距”:要解决他们的问题,他们需要编写一个程序,但他们缺乏设计算法并用特定编程语言实现算法所需的多方面专业知识。这个项目是关于通过开发帮助人们编写程序的工具来平坦编程的陡峭学习曲线。工具和用户之间的交互将围绕通过演示进行编程,其中用户提供程序在看到特定输入时应该做什么的示例,并且工具将该演示概括为工作程序。该项目将通过演示将编程扩展为用户和工具之间的双向交流。首先,该工具将向用户解释合成的程序,使用户不必学习新的编程语言。其次,当该工具错误地概括了用户的演示时,该工具将询问用户问题以生成正确的程序。最后,该工具将帮助教师为新手用户编写所谓的编程练习的微观世界。该团队汇集了编程语言和人机交互方面的专业知识,为人们开发基本的合成技术和有效的界面,专注于数据可视化和创造性的AI编程领域。通过开发新的最终用户交互模型和最终用户编程工具,该项目旨在提高人们解决问题的能力,并可能扩大对计算的参与,将那些以前认为编程不可访问的人包括在内。这项工作是围绕着在规范先验未知的情况下启用代码迭代探索的基本挑战展开的。拟议的工作直接针对这些开放的挑战,设想了合成的方法,以实现更灵活、迭代和探索性的工作流。为了做到这一点,这个项目将首先开发一个交互式合成的基础,作为解算器辅助编程技术的扩展,这些技术已经能够自动构建验证器和合成器。该基础将包括一小组基本查询,在这些查询的基础上可以实现常见的交互任务,例如计算合成程序的替代解释。接下来,利用语言结构合成方面的最新结果,研究人员将开发出合成编程原语的方法,这些方法在给定的领域中是可解释的,足够强大,并逐渐可教。这些技术将在团队为支持数据分析和创造性编程而开发的现有工具的背景下进行评估。该奖项反映了NSF的法定使命,并通过使用基金会的智力优势和更广泛的影响审查标准进行评估,被认为值得支持。
英文摘要
End users of software such as spreadsheets and other data-analysis tools often want to solve problems that go beyond the features built into those tools. Such users face a "programmability gap": to solve their problem, they need to write a program, but they lack the multi-faceted expertise necessary to design an algorithm and implement it in a particular programming language. This project is about flattening the steep learning curve of programming by developing tools that assist people in writing programs. The interaction between the tools and users will revolve around programming by demonstration, where the user provides examples of what the program should do when it sees a particular input and the tool generalizes this demonstration into a working program. The project will extend programming by demonstration into a bidirectional communication between the user and the tool. First, the tool will explain the synthesized program to the user, freeing the user from having to learn a new programming language. Second, when the tool incorrectly generalizes the user's demonstration, the tool will ask the user questions to produce a correct program. Finally, the tool will help teachers author so-called microworlds of programming exercises for novice users. The team brings together expertise in programming languages and human-computer interaction to develop both the underlying synthesis techniques and effective interfaces for people to use them, focusing on the domains of data visualization and creative AI programming. By developing new end-user interaction models and end-user programming tools, the project aims to increase people's ability to solve problems and potentially broadening participation in computing to include those who previously viewed programming as inaccessible. The work is framed around fundamental challenges of enabling iterative exploration with code when the specification is not known a priori. The proposed work targets these open challenges directly, envisioning ways for synthesis to enable more flexible, iterative, and exploratory workflows. To do this, this project will first develop a foundation for interactive synthesis as an extension to solver-aided programming techniques that have enabled automatic construction of verifiers and synthesizers. The foundation will include a small set of primitive queries on top of which one can implement common interactive tasks such as computing alternative explanations of a synthesized program. Next, leveraging the recent results in synthesis of language constructs, the researchers will develop methods for synthesis of programming primitives that are explainable in a given domain, are sufficiently powerful, and gradually teachable. These techniques will be evaluated in the context of existing tools the team has developed to support data analysis and creative programming.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.
期刊论文(11)
专著(0)
科研奖励(0)
会议论文
How families design and program games: a qualitative analysis of a 4-week online in-home study
家庭如何设计和编程游戏:为期 4 周的在线家庭研究的定性分析
DOI: 10.1145/3501712.3529724
发表时间: 2022
期刊: ACM Interaction Design for Children
影响因子: --
作者: [Druga, Stefania, Ball, Thomas, Ko, Amy]
通讯作者: Ko, Amy
The Landscape of Teaching Resources for AI Education
人工智能教育教学资源格局
DOI: 10.1145/3502718.3524782
发表时间: 2022
期刊: ACM Conference on Innovation and Technology in Computer Science Education
影响因子: --
作者: [Druga, Stefania, Otero, Nancy, Ko, Amy J.]
通讯作者: Ko, Amy J.
Conflict-Driven Synthesis for Layout Engines
布局引擎的冲突驱动综合
DOI: 10.1145/3591246
发表时间: 2023
期刊: Proceedings of the ACM on Programming Languages
影响因子: --
作者: [Liu, Junrui, Chen, Yanju, Atkinson, Eric, Feng, Yu, Bodik, Rastislav]
通讯作者: Bodik, Rastislav
Synthesizing analytical SQL queries from computation demonstration
从计算演示中综合分析 SQL 查询
DOI: 10.1145/3519939.3523712
发表时间: 2022
期刊: PLDI 2022: Proceedings of the 43rd ACM SIGPLAN International Conference on Programming Language Design and Implementation
影响因子: --
作者: [Zhou, Xiangyu, Bodik, Rastislav, Cheung, Alvin, Wang, Chenglong]
通讯作者: Wang, Chenglong
共 11 条
    Collaborative Research: FMitF: Track I: End-usser Programming for CAD Systems via Language Design and Synthesis
    • 批准号:
      2219864
    • 项目类别:
      Standard Grant
    • 资助金额:
      $50.0万
    • 财政年份:
      2022
    • 负责人:
      Rastislav Bodik
    • 依托单位:
    RAPID: Collecting Reliable COVID-19 Datasets in Crisis Conditions
    • 批准号:
      2029457
    • 项目类别:
      Standard Grant
    • 资助金额:
      $7.0万
    • 财政年份:
      2020
    • 负责人:
      Rastislav Bodik
    • 依托单位:
    FMitF: Track II: Programming by Demonstration for the Browser with Applications in Data Science
    • 批准号:
      1918027
    • 项目类别:
      Standard Grant
    • 资助金额:
      $9.89万
    • 财政年份:
      2019
    • 负责人:
      Rastislav Bodik
    • 依托单位:
    Convergence Accelerator Phase I (RAISE): Linking the Open Knowledge Network to the Web with End-User Programming
    • 批准号:
      1936731
    • 项目类别:
      Standard Grant
    • 资助金额:
      $99.47万
    • 财政年份:
      2019
    • 负责人:
      Rastislav Bodik
    • 依托单位:
    海外基金