• Publications
  • Influence
Formal verification of a realistic compiler
TLDR
This paper reports on the development and formal verification (proof of semantic preservation) of CompCert, a compiler from Clight (a large subset of the C programming language) to PowerPC assembly code, using the Coq proof assistant both for programming the compiler and for proving its correctness. Expand
  • 1,008
  • 97
  • PDF
Formal certification of a compiler back-end or: programming a compiler with a proof assistant
  • X. Leroy
  • Computer Science
  • POPL '06
  • 11 January 2006
TLDR
This paper reports on the development and formal certification (proof of semantic preservation) of a compiler from Cminor (a C-like imperative language) to PowerPC assembly code, using the Coq proof assistant both for programming the compiler and for proving its correctness. Expand
  • 707
  • 62
  • PDF
A Formally Verified Compiler Back-end
  • X. Leroy
  • Computer Science
  • Journal of Automated Reasoning
  • 12 February 2009
TLDR
This article describes the development and formal verification (proof of semantic preservation) of a compiler back-end from Cminor (a simple imperative intermediate language) to PowerPC assembly code, using Coq proof assistant both for programming the compiler and for proving its soundness. Expand
  • 433
  • 50
  • PDF
Manifest types, modules, and separate compilation
  • X. Leroy
  • Computer Science
  • POPL '94
  • 1 February 1994
TLDR
This paper presents a variant of the SML module system that introduces a strict distinction between abstract types and manifest types (types whose definitions are part of the module specification), while retaining most of the expressive power of the original module system. Expand
  • 307
  • 27
  • PDF
A concurrent, generational garbage collector for a multithreaded implementation of ML
TLDR
This paper presents the design and implementation of a “quasi real-time” garbage collector for Concurrent Caml Light, an implementation of ML with threads. Expand
  • 233
  • 26
  • PDF
A compiled implementation of strong reduction
TLDR
We develop and prove correct a strong reducer and ß-equivalence checker for the λ-calculus with products, sums, and guarded fixpoints, based on the bytecode of an abstract machine performing weak reductions on non-closed terms. Expand
  • 183
  • 26
  • PDF
The ZINC experiment : an economical implementation of the ML language
TLDR
Ce rapport pr esente en d etail la conception et la r ealisation du syst eme ZINC. Expand
  • 199
  • 21
The Objective Caml system release 2.04
  • 102
  • 19
Mechanized Semantics for the Clight Subset of the C Language
TLDR
This article presents the formal semantics of a large subset of the C language called Clight. Expand
  • 160
  • 17
  • PDF
Applicative functors and fully transparent higher-order modules
  • X. Leroy
  • Computer Science
  • POPL '95
  • 25 January 1995
TLDR
We present a variety of the Standard ML module system where parameterized abstract types (i.e. functors returning generative types) map provably equal arguments to compatible abstract types, instead of generating distinct types at each application. Expand
  • 162
  • 14
  • PDF