Stitch: the sound type-indexed type checker (functional pearl)

Stitch: the sound type-indexed type checker (functional pearl)
复制标题

针迹:音型索引型格子(功能性珍珠)

DOI:
10.1145/3406088.3409015
复制
发表时间:
2020
期刊:
Haskell 2020: Proceedings of the 13th ACM SIGPLAN International Symposium on Haskell
影响因子:
--
通讯作者:
Eisenberg, Richard A.
Eisenberg, Richard A.
中科院分区:
--
文献类型:
--
作者:
Eisenberg, Richard A.

文献摘要

参考文献

被引文献

相似文献

广义代数数据库(GADT)验证精细实现的能力的一个经典例子是类型索引表达式AST。这个函数珍珠刷新了这个例子,使用许多GHC的铃铛和哨子在现代Haskell中铸造它。Stitch解释器是一个完整的可执行解释器,具有解析器,类型检查器,通用子表达式消除和REPL。Stitch实现大量使用了GADT和类型索引,是一个干净的Haskell代码,并证明了Haskell的类型系统足够先进,可以在实际环境中使用花哨的类型。本文的重点是引导读者通过这些高级主题,使他们能够采用这里演示的技术。
A classic example of the power of generalized algebraic datatypes (GADTs) to verify a delicate implementation is the type-indexed expression AST. This functional pearl refreshes this example, casting it in modern Haskell using many of GHC's bells and whistles. The Stitch interpreter is a full executable interpreter, with a parser, type checker, common-subexpression elimination, and a REPL. Making heavy use of GADTs and type indices, the Stitch implementation is clean Haskell code and serves as an existence proof that Haskell's type system is advanced enough for the use of fancy types in a practical setting. The paper focuses on guiding the reader through these advanced topics, enabling them to adopt the techniques demonstrated here.
词法范围的类型变量
DOI: --
发表时间: 2002
期刊:
影响因子: --
作者:
S. Jones;Mark Shields
通讯作者: Mark Shields
类型推断、Haskell 和依赖类型
DOI: --
发表时间: 2013
期刊:
影响因子: --
作者:
Adam Gundry
通讯作者: Adam Gundry
Haskell 的通用派生机制
DOI: 10.1145/1863523.1863529
发表时间: 2010
影响因子: 2.3
作者:
José Pedro Magalhães;A. Dijkstra;J. Jeuring;Andres Löh
通讯作者: Andres Löh
在 Haskell 中为类型孔建议有效的孔配合
DOI: --
发表时间: 2018
期刊:
影响因子: --
作者:
Matthías Páll Gissurarson
通讯作者: Matthías Páll Gissurarson
正确的泛型编程类型
DOI: --
发表时间: 2012
期刊: Workshop on Generic Programming
影响因子: --
作者:
José Pedro Magalhães
通讯作者: José Pedro Magalhães