Displaying similar documents to “Two extensions of system F with (co)iteration and primitive (co)recursion principles”

Termination checking with types

Andreas Abel (2004)

RAIRO - Theoretical Informatics and Applications - Informatique Théorique et Applications

Similarity:

The paradigm of type-based termination is explored for functional programming with recursive data types. The article introduces Λ μ + , a lambda-calculus with recursion, inductive types, subtyping and bounded quantification. Decorated type variables representing approximations of inductive types are used to track the size of function arguments and return values. The system is shown to be type safe and strongly normalizing. The main novelty is a bidirectional type checking algorithm whose...

An abstract monadic semantics for value recursion

Eugenio Moggi, Amr Sabry (2004)

RAIRO - Theoretical Informatics and Applications - Informatique Théorique et Applications

Similarity:

This paper proposes an operational semantics for value recursion in the context of monadic metalanguages. Our technique for combining value recursion with computational effects works uniformly for all monads. The operational nature of our approach is related to the implementation of recursion in Scheme and its monadic version proposed by Friedman and Sabry, but it defines a different semantics and does not rely on assignments. When contrasted to the axiomatic approach proposed by Erkök...

Encoding fix in object calculi

Roy L. Crole (2000)

RAIRO - Theoretical Informatics and Applications - Informatique Théorique et Applications

Similarity:

Semantics of value recursion for monadic input/output

Levent Erkök, John Launchbury, Andrew Moran (2002)

RAIRO - Theoretical Informatics and Applications - Informatique Théorique et Applications

Similarity:

Monads have been employed in programming languages for modeling various language features, most importantly those that involve side effects. In particular, Haskell’s IO monad provides access to I/O operations and mutable variables, without compromising referential transparency. Cyclic definitions that involve monadic computations give rise to the concept of value-recursion, where the fixed-point computation takes place only over the values, without repeating or losing effects. In this...