On type-cases, union elimination, and occurrence typing

Author:

Castagna Giuseppe1ORCID,Laurent Mickaël2ORCID,Nguyễn Kim3ORCID,Lutze Matthew2ORCID

Affiliation:

1. CNRS, France / Université de Paris, France

2. Université de Paris, France

3. Université Paris-Saclay, France

Abstract

We extend classic union and intersection type systems with a type-case construction and show that the combination of the union elimination rule of the former and the typing rules for type-cases of our extension encompasses occurrence typing . To apply this system in practice, we define a canonical form for the expressions of our extension, called MSC-form. We show that an expression of the extension is typable if and only if its MSC-form is, and reduce the problem of typing the latter to the one of reconstructing annotations for that term. We provide a sound algorithm that performs this reconstruction and a proof-of-concept implementation.

Funder

Agence Nationale de la Recherche

Publisher

Association for Computing Machinery (ACM)

Subject

Safety, Risk, Reliability and Quality,Software

Reference36 articles.

1. Intersection and Union Types: Syntax and Semantics

2. Gradual typing with union and intersection types

3. Giuseppe Castagna , Victor Lanvin , Mickaël Laurent , and Kim Nguyễn . 2021. Revisiting Occurrence Typing. oct, arXiv:1907.05590. To appear in Science of Computer Programming , Elsevier Giuseppe Castagna, Victor Lanvin, Mickaël Laurent, and Kim Nguyễn. 2021. Revisiting Occurrence Typing. oct, arXiv:1907.05590. To appear in Science of Computer Programming, Elsevier

4. Gradual typing: a new perspective

Cited by 7 articles. 订阅此论文施引文献 订阅此论文施引文献,注册后可以免费订阅5篇论文的施引文献,订阅后可以查看论文全部施引文献

1. Polymorphic Type Inference for Dynamic Languages;Proceedings of the ACM on Programming Languages;2024-01-05

2. Typing Records, Maps, and Structs;Proceedings of the ACM on Programming Languages;2023-08-30

3. A Bowtie for a Beast: Overloading, Eta Expansion, and Extensible Data Types in F⋈;Proceedings of the ACM on Programming Languages;2023-01-09

4. What Types Are Needed for Typing Dynamic Objects? A Python-Based Empirical Study;Programming Languages and Systems;2023

5. MLstruct: principal type inference in a Boolean algebra of structural types;Proceedings of the ACM on Programming Languages;2022-10-31

同舟云学术

1.学者识别学者识别

2.学术分析学术分析

3.人才评估人才评估

"同舟云学术"是以全球学者为主线,采集、加工和组织学术论文而形成的新型学术文献查询和分析系统,可以对全球学者进行文献检索和人才价值评估。用户可以通过关注某些学科领域的顶尖人物而持续追踪该领域的学科进展和研究前沿。经过近期的数据扩容,当前同舟云学术共收录了国内外主流学术期刊6万余种,收集的期刊论文及会议论文总量共计约1.5亿篇,并以每天添加12000余篇中外论文的速度递增。我们也可以为用户提供个性化、定制化的学者数据。欢迎来电咨询!咨询电话:010-8811{复制后删除}0370

www.globalauthorid.com

TOP

Copyright © 2019-2024 北京同舟云网络信息技术有限公司
京公网安备11010802033243号  京ICP备18003416号-3