Union and intersection contracts are hard, actually
Not on the map. Why?
Abstract (arXiv)
Union and intersection types are a staple of gradually typed language such as TypeScript. While it's long been recognized that union and intersection types are difficult to verify statically, it may appear at first that the dynamic part of gradual typing is actually pretty simple. It turns out however, that in presence of higher-order contracts union and intersection are deceptively difficult. The literature on higher-order contracts with union and intersection, while keenly aware of the fact, doesn't really explain why. We point and illustrate the problems and trade-offs inherent to union and intersection contracts, via example and a survey of the literature.
Key facts. Cited by 1 paper in the map (data through 7 Oct 2026). First posted on arXiv 11 Jun 2021.
Builds on
No reference list yet.
Built on by
Citing papers per year: 2026: 1.
1 paper.
- 2026The Alignment Problem in Constrained Code Generationcited by 1
- 2026The Alignment Problem in Constrained Code Generation19 Jun 2026