A unified computation model for functional and logic programming
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Call by need computations to root-stable form
Proceedings of the 24th ACM SIGPLAN-SIGACT symposium on Principles of programming languages
Journal of the ACM (JACM)
Controlling Search in Declarative Programs
PLILP '98/ALP '98 Proceedings of the 10th International Symposium on Principles of Declarative Programming
Compiling Multi-Paradigm Declarative Programs into Prolog
FroCoS '00 Proceedings of the Third International Workshop on Frontiers of Combining Systems
TOY: A Multiparadigm Declarative System
RtA '99 Proceedings of the 10th International Conference on Rewriting Techniques and Applications
Proceedings of the Third International Conference on Algebraic and Logic Programming
Optimal Non-deterministic Functional Logic Computations
ALP '97-HOA '97 Proceedings of the 6th International Joint Conference on Algebraic and Logic Programming
Constructor-based conditional narrowing
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
An implementation of narrowing strategies
Proceedings of the 3rd ACM SIGPLAN international conference on Principles and practice of declarative programming
Higher-order narrowing with definitional trees
Journal of Functional Programming
Implementing functional logic languages using multiple threads and stores
Proceedings of the ninth ACM SIGPLAN international conference on Functional programming
Operational semantics for declarative multi-paradigm languages
Journal of Symbolic Computation
Evaluation strategies for functional logic programming
Journal of Symbolic Computation
Towards the uniform implementation of declarative languages
Computer Languages
Translating curry to haskell system demo
Proceedings of the 2005 ACM SIGPLAN workshop on Curry and functional logic programming
Lazy Context Cloning for Non-Deterministic Graph Rewriting
Electronic Notes in Theoretical Computer Science (ENTCS)
Reporting Failures in Functional Logic Programs
Electronic Notes in Theoretical Computer Science (ENTCS)
A Framework for Interpreting Traces of Functional Logic Computations
Electronic Notes in Theoretical Computer Science (ENTCS)
Set functions for functional logic programming
PPDP '09 Proceedings of the 11th ACM SIGPLAN conference on Principles and practice of declarative programming
Programming with narrowing: A tutorial
Journal of Symbolic Computation
Multi-paradigm declarative languages
ICLP'07 Proceedings of the 23rd international conference on Logic programming
Transforming functional logic programs into monadic functional programs
WFLP'10 Proceedings of the 19th international conference on Functional and constraint logic programming
KiCS2: a new compiler from Curry to Haskell
WFLP'11 Proceedings of the 20th international conference on Functional and constraint logic programming
From functional logic programs to purely functional programs preserving laziness
IFL'08 Proceedings of the 20th international conference on Implementation and application of functional languages
Overlapping rules and logic variables in functional logic programs
ICLP'06 Proceedings of the 22nd international conference on Logic Programming
On the correctness of bubbling
RTA'06 Proceedings of the 17th international conference on Term Rewriting and Applications
Compiling a functional logic language: the basic scheme
FLOPS'12 Proceedings of the 11th international conference on Functional and Logic Programming
Hi-index | 0.00 |
We describe the architecture of a virtual machine for executing functional logic programming languages. A distinguishing feature of our machine is that it preserves the operational completeness of non-deterministic programs by concurrently executing a pool of independent computations. Each computation executes only root-needed sequential narrowing steps. We describe the machine's architecture and instruction set, and show how to compile overlapping inductively sequential programs to sequences of machine instructions. The machine has been implemented in Java and in Standard ML.