Linear Haskell: practical linearity in a higher-order polymorphic language

JP Bernardy, M Boespflug, RR Newton… - Proceedings of the …, 2017 - dl.acm.org
Linear type systems have a long and storied history, but not a clear path forward to integrate
with existing languages such as OCaml or Haskell. In this paper, we study a linear type …

Idris 2: Quantitative type theory in practice

E Brady - arXiv preprint arXiv:2104.00480, 2021 - arxiv.org
Dependent types allow us to express precisely what a function is intended to do. Recent
work on Quantitative Type Theory (QTT) extends dependent type systems with linearity, also …

A graded dependent type system with a usage-aware semantics

P Choudhury, H Eades III, RA Eisenberg… - Proceedings of the ACM …, 2021 - dl.acm.org
Graded Type Theory provides a mechanism to track and reason about resource usage in
type systems. In this paper, we develop GraD, a novel version of such a graded dependent …

PureCake: A verified compiler for a lazy functional language

H Kanabar, S Vivien, O Abrahamsson… - Proceedings of the …, 2023 - dl.acm.org
We present PureCake, a mechanically-verified compiler for PureLang, a lazy, purely
functional programming language with monadic effects. PureLang syntax is Haskell-like and …

An existential crisis resolved: Type inference for first-class existential types

RA Eisenberg, G Duboc, S Weirich, D Lee - Proceedings of the ACM on …, 2021 - dl.acm.org
Despite the great success of inferring and programming with universal types, their dual—
existential types—are much harder to work with. Existential types are useful in building …

Small Scale Reflection for the Working Lean User

V Gladshtein, G Pîrlea, I Sergey - arXiv preprint arXiv:2403.12733, 2024 - arxiv.org
We present the design and implementation of the Small Scale Reflection proof methodology
and tactic language (aka SSR) for the Lean 4 proof assistant. Like its Coq predecessor …

[PDF][PDF] A Dependent Dependency Calculus

P Choudhury, H Eades III, S Weirich - European Symposium on …, 2022 - library.oapen.org
Over twenty years ago, Abadi et al. established the Dependency Core Calculus (DCC) as a
general purpose framework for analyzing dependency in typed programming languages …

A dependently typed calculus with pattern matching and erasure inference

M Tejiščák - Proceedings of the ACM on Programming Languages, 2020 - dl.acm.org
Some parts of dependently typed programs constitute evidence of their type-correctness
and, once checked, are unnecessary for execution. These parts can easily become …

Deriving Dependently-Typed OOP from First Principles

D Binder, I Skupin, T Süberkrüb… - Proceedings of the ACM …, 2024 - dl.acm.org
The expression problem describes how most types can easily be extended with new ways to
produce the type or new ways to consume the type, but not both. When abstract syntax trees …

Higher-order type-level programming in Haskell

C Kiss, T Field, S Eisenbach… - Proceedings of the ACM on …, 2019 - dl.acm.org
Type family applications in Haskell must be fully saturated. This means that all type-level
functions have to be first-order, leading to code that is both messy and longwinded. In this …