Export Citations
Save this search
Please login to be able to save your searches and receive alerts for new content matching your search criteria.
- research-articleSeptember 2024
Existential Containers in Scala
MPLR 2024: Proceedings of the 21st ACM SIGPLAN International Conference on Managed Programming Languages and RuntimesPages 55–64https://doi.org/10.1145/3679007.3685056Type classes have been well-established as a powerful tool to write generic algorithms and data structures while escaping vexing limitations of subtyping with respect to extensibility, binary methods, and partial abstractions. Unfortunately, type classes ...
- research-articleAugust 2024
Type-Level Property Based Testing
TyDe 2024: Proceedings of the 9th ACM SIGPLAN International Workshop on Type-Driven DevelopmentPages 37–49https://doi.org/10.1145/3678000.3678206We present an automated framework for solidifying the cohesion between software specifications, their dependently typed models, and implementation at compile time. Model Checking and type checking are currently separate techniques for automatically ...
- research-articleAugust 2024
Gradual Indexed Inductive Types
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue ICFPArticle No.: 255, Pages 544–572https://doi.org/10.1145/3674644Indexed inductive types are essential in dependently-typed programming languages, enabling precise and expressive specifications of data structures and properties. Recognizing that programming and proving with dependent types could benefit from the ...
Dependent Ghosts Have a Reflection for Free
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue ICFPArticle No.: 258, Pages 630–658https://doi.org/10.1145/3674647We introduce ghost type theory (GTT) a dependent type theory extended with a new universe for ghost data that can safely be erased when running a program but which is not proof irrelevant like with a universe of (strict) propositions. Instead, ghost data ...
- research-articleJuly 2024
“Upon This Quote I Will Build My Church Thesis”
LICS '24: Proceedings of the 39th Annual ACM/IEEE Symposium on Logic in Computer ScienceArticle No.: 65, Pages 1–12https://doi.org/10.1145/3661814.3662070The internal Church thesis (CT) is a logical principle stating that one can associate to any function f : N → N a concrete code, in some Turing-complete language, that computes f. While the compatibility of CT in simpler systems has been long known, its ...
-
- research-articleApril 2024
Message-Observing Sessions
Proceedings of the ACM on Programming Languages (PACMPL), Volume 8, Issue OOPSLA1Article No.: 142, Pages 1351–1379https://doi.org/10.1145/3649859We present Most, a process language with message-observing session types. Message-observing session types extend binary session types with type-level computation to specify communication protocols that vary based on messages observed on other channels. ...
- research-articleJanuary 2024
An Intrinsically Typed Compiler for Algebraic Effect Handlers
PEPM 2024: Proceedings of the 2024 ACM SIGPLAN International Workshop on Partial Evaluation and Program ManipulationPages 134–145https://doi.org/10.1145/3635800.3636968A type-preserving compiler converts a well-typed input program into a well-typed output program. Previous studies have developed type-preserving compilers for various source languages, including the simply-typed lambda calculus and calculi with control ...
- research-articleJanuary 2024
Strictly Monotone Brouwer Trees for Well Founded Recursion over Multiple Arguments
CPP 2024: Proceedings of the 13th ACM SIGPLAN International Conference on Certified Programs and ProofsPages 205–217https://doi.org/10.1145/3636501.3636948Ordinals can be used to prove the termination of dependently typed programs. Brouwer trees are a particular ordinal notation that make it very easy to assign sizes to higher order data structures. They extend unary natural numbers with a limit ...
- research-articleAugust 2023
Combining Dependency, Grades, and Adjoint Logic
TyDe 2023: Proceedings of the 8th ACM SIGPLAN International Workshop on Type-Driven DevelopmentPages 58–70https://doi.org/10.1145/3609027.3609408We propose two new dependent type systems. The first, is a dependent graded/linear type system where a graded dependent type system is connected via modal operators to a linear type system in the style of Linear/Non-linear logic. We then generalize this ...
A Graded Modal Dependent Type Theory with a Universe and Erasure, Formalized
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue ICFPArticle No.: 220, Pages 920–954https://doi.org/10.1145/3607862We present a graded modal type theory, a dependent type theory with grades that can be used to enforce various properties of the code. The theory has Π-types, weak and strong Σ-types, natural numbers, an empty type, and a universe, and we also extend the ...
Intrinsically Typed Sessions with Callbacks (Functional Pearl)
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue ICFPArticle No.: 212, Pages 711–739https://doi.org/10.1145/3607854All formalizations of session types rely on linear types for soundness as session-typed communication channels must change their type at every operation. Embedded language implementations of session types follow suit. They either rely on clever typing ...
A Calculus of Inductive Linear Constructions
TyDe 2023: Proceedings of the 8th ACM SIGPLAN International Workshop on Type-Driven DevelopmentPages 1–13https://doi.org/10.1145/3609027.3609404In this paper, we present a novel calculus of inductive linear constructions (CILC), combining linear types and dependent types. Our type theory addresses a looming issue in the research on linear dependent types: the lack of a general mechanism for ...
- research-articleJune 2024
ExEl: Building an Elaborator Using Extensible Constraints
IFL '23: Proceedings of the 35th Symposium on Implementation and Application of Functional LanguagesArticle No.: 4, Pages 1–13https://doi.org/10.1145/3652561.3652565Proof assistants and dependently typed languages such as Coq, Agda, Lean, and Idris can be used to ascertain the correctness of software with mathematical precision. While much research has been done on their theoretical foundations, their actual ...
Defunctionalization with Dependent Types
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue PLDIArticle No.: 127, Pages 516–538https://doi.org/10.1145/3591241The defunctionalization translation that eliminates higher-order functions from programs forms a key part of many compilers. However, defunctionalization for dependently-typed languages has not been formally studied.
We present the first formally-...
- research-articleJanuary 2023
Encoding Dependently-Typed Constructions into Simple Type Theory
CPP 2023: Proceedings of the 12th ACM SIGPLAN International Conference on Certified Programs and ProofsPages 78–89https://doi.org/10.1145/3573105.3575679In this article, we show how one can formalise in type theory mathematical objects, for which dependent types are usually deemed unavoidable, using only simple types. We outline a method to encode most of the terms of Lean's dependent type theory into ...
Impredicative Observational Equality
Proceedings of the ACM on Programming Languages (PACMPL), Volume 7, Issue POPLArticle No.: 74, Pages 2171–2196https://doi.org/10.1145/3571739In dependent type theory, impredicativity is a powerful logical principle that allows the definition of propositions that quantify over arbitrarily large types, potentially resulting in self-referential propositions. Impredicativity can provide a system ...
- research-articleDecember 2022
A Type Discipline for Message Passing Parallel Programs
ACM Transactions on Programming Languages and Systems (TOPLAS), Volume 44, Issue 4Article No.: 26, Pages 1–55https://doi.org/10.1145/3552519We present ParTypes, a type discipline for parallel programs. The model we have in mind comprises a fixed number of processes running in parallel and communicating via collective operations or point-to-point synchronous message exchanges. A type describes ...
- research-articleOctober 2022
A Category Theoretic View of Contextual Types: From Simple Types to Dependent Types
ACM Transactions on Computational Logic (TOCL), Volume 23, Issue 4Article No.: 25, Pages 1–36https://doi.org/10.1145/3545115We describe the categorical semantics for a simply typed variant and a simplified dependently typed variant of Cocon, a contextual modal type theory where the box modality mediates between the weak function space that is used to represent higher-order ...
- research-articleSeptember 2022
Computing with generic trees in Agda
TyDe 2022: Proceedings of the 7th ACM SIGPLAN International Workshop on Type-Driven DevelopmentPages 38–44https://doi.org/10.1145/3546196.3550165Dependently-typed programming languages offer powerful new means of abstraction, allowing the programmer to work generically across data structures. However, using the standard generic encoding of tree-like data structures (the W-types), we soon notice ...