Control and data driven execution of logic programs: A comparison (Q1083186)

From MaRDI portal

!

This is the item page for this Wikibase entity, intended for internal use and editing purposes. Please use the normal view instead:

scientific article; zbMATH DE number 3976297
Language Label Description Also known as
default for all languages
No label defined
    English
    Control and data driven execution of logic programs: A comparison
    scientific article; zbMATH DE number 3976297

      Statements

      Control and data driven execution of logic programs: A comparison (English)
      0 references
      0 references
      1986
      0 references
      In this paper we examine two methods for controlling the execution of parallel logic programs. Specifically, we compare control driven execution of PRISM programs vs. data driven execution of Concurrent Prolog. Given a PRISM program we present several automatic transformations for deriving a Concurrent Prolog program whose execution is isomorphic to the original program. Although in many specific cases we may be able to write very natural specifications based on read-only variable and commit constructs, in general it is difficult to simulate control flow naturally using a transformation based on these constructs. Since control flow primitives are shown to have a simple and efficient implementation it seems that both data-flow and control-flow mechanisms are desirable for a general purpose parallel logic programming language. Subsequently, we propose a simple low level language to implement both PRISM nested control flow and Concurrent Prolog read-only variables. The idea is to convert the control/data dependencies into simple event scripts and then use existing methods to implement these scripts efficiently. Finally, we introduce a data structure that supports an efficient implementation of PRISM nested control flow.
      0 references
      parallelism
      0 references
      parallel logic programs
      0 references
      control driven execution of PRISM programs
      0 references
      data driven execution of Concurrent Prolog
      0 references
      automatic transformations
      0 references
      Concurrent Prolog program
      0 references
      control flow
      0 references
      data-flow
      0 references
      0 references
      0 references
      0 references
      0 references
      0 references
      0 references

      Identifiers

      0 references
      0 references
      0 references
      0 references
      0 references