A polymorphic function is parametric if its behavior does not depend on the type at which it is instantiated. Starting with Reynolds's work, the study of parametricity is typ...
Indeterminism is typical for concurrent computation. If several concurrent actors compete for the same resource then at most one of them may succeed, whereby the choice of the suc...
This paper presents the core type system and type inference algorithm of OCamlDuce, a merger between OCaml and XDuce. The challenge was to combine two type checkers of very differ...
This paper introduces a new recursion principle for inductive data modulo -equivalence of bound names. It makes use of Oderskystyle local names when recursing over bound names. It...
A good foreign-language interface is crucial for the success of any modern programming language implementation. Although all serious compilers for functional languages have some f...