A reasonably exceptional type theory

PM Pédrot, N Tabareau, HJ Fehrmann… - Proceedings of the ACM …, 2019 - dl.acm.org
Traditional approaches to compensate for the lack of exceptions in type theories for proof
assistants have severe drawbacks from both a programming and a reasoning perspective …

Quantum Hoare type theory

K Singhal - arXiv preprint arXiv:2012.02154, 2020 - arxiv.org
As quantum computers become real, it is high time we come up with effective techniques
that help programmers write correct quantum programs. Inspired by Hoare Type Theory in …

Superficially substructural types

NR Krishnaswami, A Turon, D Dreyer… - Proceedings of the 17th …, 2012 - dl.acm.org
Many substructural type systems have been proposed for controlling access to shared state
in higher-order languages. Central to these systems is the notion of a* resource*, which may …

[PDF][PDF] A sound and complete logic for algebraic effects

C Matache, S Staton - Foundations of Software Science and Computation …, 2019 - Springer
This work investigates three notions of program equivalence for a higher-order functional
language with recursion and general algebraic effects, in which programs are written in …

A HAT Trick: Automatically Verifying Representation Invariants Using Symbolic Finite Automata

Z Zhou, Q Ye, B Delaware, S Jagannathan - Proceedings of the ACM on …, 2024 - dl.acm.org
Functional programs typically interact with stateful libraries that hide state behind typed
abstractions. One particularly important class of applications are data structure …

[PDF][PDF] Reasoning about effects: Seeing the wood through the trees

G Hutton, D Fulger - Proceedings of the Ninth Symposium on Trends in …, 2008 - Citeseer
Pure functional languages such as Haskell support programming with impure effects by
exploiting mathematical notions such as monads, applicative functors, and arrows. However …

A monadic framework for relational verification: applied to information security, program equivalence, and optimizations

N Grimm, K Maillard, C Fournet, C Hriţcu… - Proceedings of the 7th …, 2018 - dl.acm.org
Relational properties describe multiple runs of one or more programs. They characterize
many useful notions of security, program refinement, and equivalence for programs with …

Practical permissions for race-free parallelism

E Westbrook, J Zhao, Z Budimlić, V Sarkar - ECOOP 2012–Object …, 2012 - Springer
Type systems that prevent data races are a powerful tool for parallel programming,
eliminating whole classes of bugs that are both hard to find and hard to fix. Unfortunately, it …

Recalling a witness: foundations and applications of monotonic state

D Ahman, C Fournet, C Hriţcu, K Maillard… - Proceedings of the …, 2017 - dl.acm.org
We provide a way to ease the verification of programs whose state evolves monotonically.
The main idea is that a property witnessed in a prior state can be soundly recalled in the …

Reasoning about the garden of forking paths

Y Li, L Xia, S Weirich - Proceedings of the ACM on Programming …, 2021 - dl.acm.org
Lazy evaluation is a powerful tool for functional programmers. It enables the concise
expression of on-demand computation and a form of compositionality not available under …