Gradual ty** with union and intersection types

G Castagna, V Lanvin - Proceedings of the ACM on Programming …, 2017 - dl.acm.org
We propose a type system for functional languages with gradual types and set-theoretic type
connectives and prove its soundness. In particular, we show how to lift the definition of the …

On type-cases, union elimination, and occurrence ty**

G Castagna, M Laurent, K Nguyễn… - Proceedings of the ACM on …, 2022 - dl.acm.org
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 ty** rules for …

Ty** records, maps, and structs

G Castagna - Proceedings of the ACM on Programming Languages, 2023 - dl.acm.org
Records are finite functions from keys to values. In this work we focus on two main distinct
usages of records: structs and maps. The former associate different keys to values of …

Julia subty**: a rational reconstruction

F Zappa Nardelli, J Belyakova, A Pelenitsyn… - Proceedings of the …, 2018 - dl.acm.org
Programming languages that support multiple dispatch rely on an expressive notion of
subty** to specify method applicability. In these languages, type annotations on method …

Dependently-typed data plane programming

M Eichholz, EH Campbell, M Krebs, N Foster… - Proceedings of the …, 2022 - dl.acm.org
Programming languages like P4 enable specifying the behavior of network data planes in
software. However, with increasingly powerful and complex applications running in the …

Set-theoretic types for erlang

A Schimpf, S Wehr, A Bieniusa - Proceedings of the 34th Symposium on …, 2022 - dl.acm.org
Erlang is a functional programming language with dynamic ty**. The language offers
great flexibility for destructing values through pattern matching and dynamic type tests …

Set-theoretic types for polymorphic variants

G Castagna, T Petrucciani, K Nguyễn - Proceedings of the 21st ACM …, 2016 - dl.acm.org
Polymorphic variants are a useful feature of the OCaml language whose current definition
and implementation rely on kinding constraints to simulate a subty** relation via …

The design principles of the elixir type system

G Castagna, G Duboc, J Valim - arxiv preprint arxiv:2306.06391, 2023 - arxiv.org
Elixir is a dynamically-typed functional language running on the Erlang Virtual Machine,
designed for building scalable and maintainable applications. Its characteristics have …

Polymorphic functions with set-theoretic types: Part 2: Local type inference and type reconstruction

G Castagna, K Nguyen, Z Xu, P Abate - Proceedings of the 42nd Annual …, 2015 - dl.acm.org
This article is the second part of a two articles series about the definition of higher order
polymorphic functions in a type system with recursive types and set-theoretic type …

Union Types with Disjoint Switches

B Rehman, X Huang, N **e… - … European Conference on …, 2022 - drops.dagstuhl.de
Union types are nowadays a common feature in many modern programming languages.
This paper investigates a formulation of union types with an elimination construct that …