Lambda-calculus, types and models
Lambda-calculus, types and models
Fixed points and extensionality in typed functional programming languages
Fixed points and extensionality in typed functional programming languages
Least and greatest fixed points in intuitionistic natural deduction
Theoretical Computer Science - Special issue on theories of types and proofs
Least and greatest fixed points in intuitionistic natural deduction
Theoretical Computer Science - Special issue on theories of types and proofs
Functional Programming with Bananas, Lenses, Envelopes and Barbed Wire
Proceedings of the 5th ACM Conference on Functional Programming Languages and Computer Architecture
Monotone Fixed-Point Types and Strong Normalization
Proceedings of the 12th International Workshop on Computer Science Logic
On the Representation of Data in Lambda-Calculus
CSL '89 Proceedings of the 3rd Workshop on Computer Science Logic
A Typed Lambda Calculus with Categorical Type Constructors
Category Theory and Computer Science
Iteration and coiteration schemes for higher-order and nested datatypes
Theoretical Computer Science - Foundations of software science and computation structures
Recursion schemes for dynamic programming
MPC'06 Proceedings of the 8th international conference on Mathematics of Program Construction
Selective Memoization with Box Types
Electronic Notes in Theoretical Computer Science (ENTCS)
Hi-index | 0.00 |
Course-of-value recursion is a scheme which allows us to define the value of a function in some argument of an inductive structure by using not only the immediate, but arbitrary previously computed values. In the categorical approach to typed (total) functional programming, where datatypes (codatatypes) are initial algebras (final coalgebras), one models this principle by a construction called histomorphism. On the other hand, it is known that other categorical principles such as catamorphisms and anamorphisms representing definitions by iteration and coiteration have been successfully used to implement safe type systems extending the second-order polymorphic lambda calculus, system F. Hence it is natural to pursuit the definition and implementation of fold operators corresponding to course-of-value recursion as well. This paper proposes some new such extensions and states some important remarks emerged while verifying the correctness and safety properties of their operational semantics, relying not only on the categorical, but also on the logical approach based on fixed-point operators. Our observations should be considered as a starting point for a deeper study of the interrelation between these two approaches.