• Publications
  • Influence
System Description: Twelf - A Meta-Logical Framework for Deductive Systems
TLDR
Twelf is a meta-logical framework for the specification, implementation, and meta-theory of deductive systems from the theory of programming languages and logics and is a significant extension and complete reimplementation of the Elf system. Expand
Higher-order abstract syntax
TLDR
Higher-order abstract syntax incorporates name binding information in a uniform and language generic way and acts as a powerful link integrating diverse tools in program manipulation and other formal systems where matching and substitution or unification are central operations. Expand
Dependent types in practical programming
We present an approach to enriching the type system of ML with a restricted form of dependent types, where type index objects are drawn from a constraint domain C, leading to the DML(C) languageExpand
Session Types as Intuitionistic Linear Propositions
TLDR
This paper introduces a type system for the π-calculus that exactly corresponds to the standard sequent calculus proof system for dual intuitionistic linear logic, and provides the first purely logical account of all features of session types. Expand
Uniform Proofs as a Foundation for Logic Programming
TLDR
A proof-theoretic characterization of logical languages that form suitable bases for Prolog-like programming languages is provided and it is shown that first-order and higher-order Horn clauses with classical provability are examples of such a language. Expand
A judgmental reconstruction of modal logic
TLDR
This work reconsiders the foundations of modal logic, following Martin-Löf's methodology of distinguishing judgments from propositions, and gives a new presentation of lax logic, finding that the lax modality is already expressible using possibility and necessity. Expand
A modal analysis of staged computation
We show that a type system based on the intuitionistic modal logic S4 provides an expressive framework for specifying and analyzing computation stages in the context of typed λ-calculi andExpand
Eliminating array bound checking through dependent types
We present a type-based approach to eliminating array bound checking and list tag checking by conservatively extending Standard ML with a restricted form of dependent types. This enables theExpand
A modal analysis of staged computation
TLDR
The main technical result is a conservative embedding of Nielson & Nielson's two-level functional language in the language Mini-ML, thus proving that binding-time correctness is equivalent to modal correctness on this fragment. Expand
Refinement types for ML
TLDR
A type system called refinement types is described, which is an example of a new way to make this tradeoff, as well as a potentially useful system in itself. Expand
...
1
2
3
4
5
...