Understanding Haskell-style Overloading via Open Data and Open Functions

Abstract

We present a new, uniform semantics for Haskell-style overloading. We realize our approach in a new core language, System FD, whose metatheory we mechanize in the Lean4 interactive theorem prover. System FD is distinguished by its open data types and open functions, each given by a collection of instances rather than by a single definition. We show that System FD can encode advanced features of Haskell's of type class systems, more expressively than current semantics of these features, and without assuming additional type equality axioms.

0

Turn this paper into a full lesson

ArcXiv compiles a staged curriculum from this paper: 8-12 lessons across beginner → advanced, synthesised section guides, visuals, flashcards, a quiz, exercises, and on-demand deep dives per section. Grounded in the abstract, never invented.

Discussion (0)

Sign in to join the discussion.

Loading comments…