当前位置: X-MOL 学术ACM Comput. Surv. › 论文详情
Our official English website, www.x-mol.net, welcomes your feedback! (Note: you will need to create a separate account there.)
Bidirectional Typing
ACM Computing Surveys ( IF 16.6 ) Pub Date : 2021-05-25 , DOI: 10.1145/3450952
Jana Dunfield 1 , Neel Krishnaswami 2
Affiliation  

Bidirectional typing combines two modes of typing: type checking, which checks that a program satisfies a known type, and type synthesis, which determines a type from the program. Using checking enables bidirectional typing to support features for which inference is undecidable; using synthesis enables bidirectional typing to avoid the large annotation burden of explicitly typed languages. In addition, bidirectional typing improves error locality. We highlight the design principles that underlie bidirectional type systems, survey the development of bidirectional typing from the prehistoric period before Pierce and Turner’s local type inference to the present day, and provide guidance for future investigations.

中文翻译:

双向打字

双向类型结合了两种类型的类型:类型检查,检查程序是否满足已知类型,类型综合,从程序中确定类型。使用检查启用双向键入以支持无法确定推理的功能;使用综合可以实现双向类型,以避免显式类型语言的大量注释负担。此外,双向打字提高了错误的局部性。我们强调了作为双向类型系统基础的设计原则,调查了从 Pierce 和 Turner 本地类型推断之前的史前时期到现在双向类型的发展,并为未来的调查提供指导。
更新日期:2021-05-25
down
wechat
bug