SHF: MEDIUM: Collaborative Research: The Theory and Practice of Dependent Types in Haskell
SHF: MEDIUM: Collaborative Research: The Theory and Practice of Dependent Types in Haskell
批准号:
1704041
负责人:
Christian Murphy
金额:
$31.13万
依托单位:
依托单位国家:
美国
项目类别:
Continuing Grant
财政年份:
2017
资助国家:
美国
项目状态:
已结题
起止时间:
2017-07-01 至 2021-06-30
中文摘要
点击翻译按钮获取中文摘要
英文摘要
This project's overarching goal is to prevent bugs in software by extending the Haskell programming language to support dependent types. Haskell is used by researchers and programmers in industry to build a variety of software systems, such as financial analysis tools, interactive websites, data visualizations, and automated vehicle software. Dependent types are an up-and-coming technology that allows programmers to avoid bugs in their software, allowing them to include mathematical proofs of correctness in their code. These proofs are checked before the software ever runs, ruling out the possibility of failures, such as a crashed website. The intellectual merits are insights into the integration of advanced mathematical theories with an industrial-strength development tool (Haskell) and a deeper understanding of the mathematical principles that underlie the creation of correct software. The project's broader significance and importance are to give the technology industry access to dependent types for the first time, while creating opportunities for students (including those at one principal investigator's undergraduate women's college) to engage with this technology.The project includes both practical and foundational components. The Haskell type system, as implemented in the Glasgow Haskell Compiler (GHC) version 8.0, is able to simulate dependent types through the use of many language extensions. However, this use requires awkward encodings, and the extensions that support them complicate the language. In contrast, the Haskell type system envisioned by this project is based on a uniform approach to dependently typed programming that subsumes prior extensions. Part of this project involves replacing the core language of GHC with one based on dependent type theory, using relevance annotations to ensure that these extensions are backwards compatible. Furthermore, the project also introduces matchable functions, a qualifier that determines whether function applications can be analyzed via pattern matching, enabling the integration of dependent types with GHC's current type inference algorithm. Finally, this project includes an examination of the semantics of dependently typed programming languages with partiality.
期刊论文(8)
专著(0)
科研奖励(0)
会议论文
登录
查看更多内容
Seeking stability by being lazy and shallow: lazy and shallow instantiation is user friendly
通过懒惰和浅薄来寻求稳定:懒惰和浅薄的实例化是用户友好的
DOI:
10.1145/3471874.3472985
发表时间:
2021
期刊:
Haskell 2021: Proceedings of the 14th ACM SIGPLAN International Symposium on Haskell
影响因子:
--
作者:
[Bottu, Gert-Jan, Eisenberg, Richard A.]
通讯作者:
Eisenberg, Richard A.
Partial type constructors: or, making ad hoc datatypes less ad hoc
部分类型构造函数:或者,使临时数据类型不那么临时
DOI:
10.1145/3371108
发表时间:
2020
期刊:
Proceedings of the ACM on Programming Languages
影响因子:
--
作者:
[Jones, Mark P., Morris, J. Garrett, Eisenberg, Richard A.]
通讯作者:
Eisenberg, Richard A.
A role for dependent types in Haskell
Haskell 中依赖类型的角色
DOI:
10.1145/3341705
发表时间:
2019
期刊:
Proceedings of the ACM on Programming Languages
影响因子:
--
作者:
[Weirich, Stephanie, Choudhury, Pritam, Voizard, Antoine, Eisenberg, Richard A.]
通讯作者:
Eisenberg, Richard A.
Type variables in patterns
在模式中键入变量
DOI:
10.1145/3242744.3242753
发表时间:
2018
期刊:
Haskell Symposium
影响因子:
--
作者:
[Eisenberg, Richard A., Breitner, Joachim, Peyton Jones, Simon]
通讯作者:
Peyton Jones, Simon
The Thoralf plugin: for your fancy type needs
Thoralf 插件:满足您的奇特类型需求
DOI:
10.1145/3242744.3242754
发表时间:
2018
期刊:
Haskell Symposium
影响因子:
--
作者:
[Otwani, Divesh, Eisenberg, Richard A.]
通讯作者:
Eisenberg, Richard A.
共 8 条
海外基金