Polymorphic Functions with Set-Theoretic Types. Part 1: Syntax, Semantics, and Evaluation - INRIA - Institut National de Recherche en Informatique et en Automatique Accéder directement au contenu
Communication Dans Un Congrès Année : 2014

Polymorphic Functions with Set-Theoretic Types. Part 1: Syntax, Semantics, and Evaluation

Résumé

We define and study the type system, local type inference, and execution model for a calculus with higher-order polymorphic functions, recursive types with arrow and product type constructors and set-theoretic type connectives (union, intersection, and negation). This work provides the theoretical foundations and technical machinery needed to design and implement higher-order polymorphic functional languages for semi-structured data and is presented in two parts. In this first part we define and study the explicitly-typed version of the calculus in which type instantiation is driven by explicit instantiation annotations. In particular, we show why this requires to solve the longstanding problem of the definition of an explicitly-typed λ-calculus with intersection types, we solve it, and define an efficient evaluation model for it. In the second part, described in a companion paper, we present a local type inference system that allows the programmer to omit explicit instantiation annotations, and a type reconstruction system that allows the programmer to omit explicit type annotations.
Fichier non déposé

Dates et versions

hal-00907166 , version 1 (21-11-2013)

Identifiants

Citer

Giuseppe Castagna, Kim Nguyen, Zhiwu Xu, Hyeonseung Im, Sergueï Lenglet, et al.. Polymorphic Functions with Set-Theoretic Types. Part 1: Syntax, Semantics, and Evaluation. POPL '14, 41th ACM Symposium on Principles of Programming Languages, Jan 2014, San Diego, United States. pp.5-17, ⟨10.1145/2535838.2535840⟩. ⟨hal-00907166⟩
296 Consultations
0 Téléchargements

Altmetric

Partager

Gmail Facebook X LinkedIn More