课题基金 / 基金详情

CAREER: Extensibility in Theory and Practice

CAREER: Extensibility in Theory and Practice
职业:理论与实践的可扩展性
批准号:
2044815
负责人:
John Garrett Morris
金额:
$52.46万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2021
资助国家:
美国
项目状态:
未结题
起止时间:
2021-04-01 至 2026-03-31

项目摘要

项目成果

John Garrett Morris的其他基金

相似基金

相关文献

中文摘要
翻译
现代软件工程依赖于独立软件组件和库的大型生态系统。 这对编程语言和语言工具的设计提出了两个挑战,这两个问题都在本项目中得到了解决。 首先,语言必须支持开发独立组件,包括从现有应用程序中识别和抽象可重用组件。 第二,语言必须提供表达性规范机制,以确保组件被正确使用,并且组件不会有意外的交互。 该项目的新颖之处是新的编程语言功能,用于模块化规范和程序数据和行为的实现,从面向用户的应用程序到操作系统组件和硬件支持的软件堆栈的所有级别。 该项目的影响是软件可靠性和程序员生产力的提高,因为该项目使语言工具能够自动帮助程序员识别和正确使用软件组件和库。 第一个是高级功能程序中的模块化和重用。 该项目为数据和计算效果开发可扩展类型,支持高级抽象,包括重载,泛型编程和可扩展效果处理程序。 第二个是模块化和在低层次和系统程序中的重用。 该项目开发了可扩展的数据结构及其布局的位级规范,目标应用包括操作系统内核和硬件接口。 这些主题中的每一个只有在所产生的语言功能与现有方法具有可比性能时才会产生影响。 该项目使用线性类型和编译类型专门化来抵消传统上与通用和可扩展编程技术相关的运行时成本。该奖项反映了NSF的法定使命,并通过使用基金会的知识价值和更广泛的影响审查标准进行评估,被认为值得支持。
英文摘要
Modern software engineering relies on large ecosystems of independent software components and libraries. This poses two challenges for the design of programming languages and language tooling, both of which are addressed by this project. First, languages must support developing independent components, including identifying and abstracting reusable components from existing applications. Second, languages must provide expressive specification mechanisms to ensure that components are used correctly and that components do not have unintended interactions. The project's novelties are new programming language features for modular specification and implementation of program data and behavior, at all level of the software stack from user-facing applications to operating system components and hardware support. The project's impacts are improvements in both software reliability and programmer productivity, as the project enables language tooling to automatically help programmers identify and correctly use software components and libraries.The project has two primary themes. The first is modularity and reuse in high-level functional programs. The project develops extensible types for data and computational effects, supporting high-level abstractions including overloading, generic programming, and extensible effect handlers. The second is modularity and reuse in low-level and systems programs. The project develops extensible bit-level specifications of data structures and their layout, targeting applications including operating system kernels and hardware interfaces. Each of these themes will only have impact if the resulting language features have comparable performance with existing approaches. The project uses linear typing and compile-type specialization to offset runtime costs traditionally associated with generic and extensible programming techniques.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)
会议论文
Partial type constructors in practice
实践中的部分类型构造函数
DOI: 10.1145/3546189.3549923
发表时间: 2022
期刊: Haskell 2022: Proceedings of the 15th ACM SIGPLAN International Haskell Symposium
影响因子: --
作者: [Ingle, Apoorv, Hubers, Alex, Morris, J. Garrett]
通讯作者: Morris, J. Garrett
Soundly Handling Linearity
妥善处理线性
DOI: 10.1145/3632896
发表时间: 2024
期刊: Proceedings of the ACM on Programming Languages
影响因子: --
作者: [Tang, Wenhao, Hillerström, Daniel, Lindley, Sam, Morris, J. Garrett]
通讯作者: Morris, J. Garrett
SHF: SMALL: A New Semantics for Type-Level Programming in Haskell
  • 批准号:
    2345580
  • 项目类别:
    Standard Grant
  • 资助金额:
    $59.93万
  • 财政年份:
    2024
  • 负责人:
    John Garrett Morris
  • 依托单位:
海外基金