arrow
返回

Refinement Types: A Tutorial

delete2021-01-01
delete16
delete
OA
AI
R
Ranjit Jhala *
N
Niki Vazou
DOI:10.1561/2500000032delete
delete原文链接
delete原文求助
delete分享
delete收藏
摘要

摘要

En 中文
Refinement types enrich a language's type system with logical predicates that circumscribe the set of values described by the type. These refinement predicates provide software developers a tunable knob with which to inform the type system about what invariants and correctness properties should be checked on their code, and give the type checker a way to enforce those properties at compile time. In this article, we distill the ideas developed in the substantial literature on refinement types into a unified tutorial that explains the key ingredients of modern refinement type systems. In particular, we show how to implement a refinement type checker via a progression of languages that incrementally add features to the language or type system.
Keyword:
POLYMORPHISM
TERMINATION
STATE

期刊

F
Foundations and Trends in Programming Languages
IF:
0.5
论文数:
8
被引数:
130

机构

University of California System 封面图
University of California System
学者数:
37.7W
论文数: 33.8W
被引数: 6.6K
U
University of California San Diego
学者数:
4.6W
论文数: 3.5W
被引数: 924
引用论文

引用论文

暂无论文信息