FPCA '89 Proceedings of the fourth international conference on Functional programming languages and computer architecture
Types in logic programming
Type reconstruction in the presence of polymorphic recursion
ACM Transactions on Programming Languages and Systems (TOPLAS)
Type inference with polymorphic recursion
ACM Transactions on Programming Languages and Systems (TOPLAS)
The Go¨del programming language
The Go¨del programming language
ACM Transactions on Programming Languages and Systems (TOPLAS)
ML for the working programmer (2nd ed.)
ML for the working programmer (2nd ed.)
From logic programming to Prolog
From logic programming to Prolog
ICFP '97 Proceedings of the second ACM SIGPLAN international conference on Functional programming
POPL '77 Proceedings of the 4th ACM SIGACT-SIGPLAN symposium on Principles of programming languages
The Haskell: The Craft of Functional Programming
The Haskell: The Craft of Functional Programming
Miranda: The Craft of Functional Programming
Miranda: The Craft of Functional Programming
Analysis of Polymorphically Typed Logic Programs Using ACI-Unification
LPAR '01 Proceedings of the Artificial Intelligence on Logic for Programming
Parametric Polymorphism for Typed Prolog and lambda-Prolog
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
PLILP '96 Proceedings of the 8th International Symposium on Programming Languages: Implementations, Logics, and Programs
Polymorphic Type Schemes and Recursive Definitions
Proceedings of the 6th Colloquium on International Symposium on Programming
CP '99 Proceedings of the 5th International Conference on Principles and Practice of Constraint Programming
Hi-index | 0.00 |
In typed logic programming, the head condition states that for each clause defining a predicate p, the arguments of the clause head must have the declared type of p, rather than a proper polymorphic instance. In typed functional programming, polymorphic recursion means that in a recursive definition of a function f, the recursive call to f uses a type which is a proper instance of the declared type of f. We show that both notions are also meaningful in the respectively other paradigm. We observe a symmetry between the head condition and the "monomorphic recursion condition" (meaning absence of polymorphic recursion). We discuss arguments for and against each condition in both paradigms.