Proceedings of the Second European Symposium on Programming
Types in logic programming
Implementation of narrowing: the Prolog-based approach
Logic programming languages
Principal type schemes for functional programs with overloading and subtyping
TAPSOFT '93 Selected papers of the colloquium on Formal approaches of software engineering
A unified computation model for functional and logic programming
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
A Rewriting Logic for Declarative Programming
ESOP '96 Proceedings of the 6th European Symposium on Programming Languages and Systems
A Demand Driven Computation Strategy for Lazy Narrowing
PLILP '93 Proceedings of the 5th International Symposium on Programming Language Implementation and Logic Programming
Combining Layz Narrowing with Disequality Constraints
PLILP '94 Proceedings of the 6th International Symposium on Programming Language Implementation and Logic Programming
Parametric Order-Sorted Types in Logic Programming
TAPSOFT '91 Proceedings of the International Joint Conference on Theory and Practice of Software Development, Volume 2: Advances in Distributed Computing (ADC) and Colloquium on Combining Paradigms for Software Developmemnt (CCPSD)
Algebraic Semantics for Functional Logic Programming with Polymorphic Order-Sorted Types
ALP '96 Proceedings of the 5th International Conference on Algebraic and Logic Programming
Lazy Narrowing with Parametric Order Sorted Types
ALP '97-HOA '97 Proceedings of the 6th International Joint Conference on Algebraic and Logic Programming
Hi-index | 0.00 |
We propose an implementation of a functional logic language with parametric order sorted types by translating typed lazy narrowing into Prolog, and establishing a reasonable strategy of combination of data and type constraints solving. By means of this translation, we describe how types can be used at run-time to prune the search space of solutions of a goal. Moreover, we present type inference and checking compile-time tools for the language showing its usefulness for improving computations.