GADTs meet their match: pattern-matching warnings that account for GADTs, guards, and laziness

GADTs meet their match: pattern-matching warnings that account for GADTs, guards, and laziness
复制标题

GADT 遇到了他们的对手:解释 GADT、守卫和懒惰的模式匹配警告

DOI:
10.1145/2784731.2784748
复制
发表时间:
2015
期刊:
Proceedings of the 20th ACM SIGPLAN International Conference on Functional Programming
影响因子:
--
通讯作者:
S. Jones
S. Jones
中科院分区:
--
文献类型:
--
作者:
G. Karachalias;Tom Schrijvers;Dimitrios Vytiniotis;S. Jones

文献摘要

被引文献

相似文献

对于ML和Haskell,当函数定义有冗余或缺失模式时,准确的警告是使命关键。但是,当程序员使用保护(即使是简单的保护)、GADT、模式保护或视图模式时,今天的编译器会生成虚假的警告。我们给出了第一个算法,处理所有这些情况下,在一个单一的,统一的框架,连同实施GHC,并证明其实用程序在实践中。
For ML and Haskell, accurate warnings when a function definition has redundant or missing patterns are mission critical. But today's compilers generate bogus warnings when the programmer uses guards (even simple ones), GADTs, pattern guards, or view patterns. We give the first algorithm that handles all these cases in a single, uniform framework, together with an implementation in GHC, and evidence of its utility in practice.