Abstract
This paper describes an algorithm for the code generation of determinacy testing for nondeterminate flat concurrent logic programming languages. Languages such as Andorra and Pandora require that procedure invocations suspend if there is more than one candidate clause potentially satisfying the goal. The algorithm described has been developed specifically for a variant of flat Pandora based on FGHC, although the concepts are general. We have extended Kliger and Shapiro's decision-graph construction algorithm to compile “don't-know” procedures that must suspend for nondeterminate goal invocation. The determinacy test is compiled into a decision graph quite different from those of committed-choice procedures: They are more similar to decision trees optimized by code sharing. We present both empirical data of compilation results 1994, and a correctness proof for our code-generation algorithm. © 1994, ACM. All rights reserved.
Author supplied keywords
Cite
CITATION STYLE
Tick, E., & Korsloot, M. (1994). Determinacy Testing for Nondeterminate Logic Programming Languages. ACM Transactions on Programming Languages and Systems (TOPLAS), 16(1), 3–34. https://doi.org/10.1145/174625.174626
Register to see more suggestions
Mendeley helps you to discover research relevant for your work.