Compiling OR-parallelism into AND-parallelism (Q1819930)

From MaRDI portal
Revision as of 10:25, 30 July 2024 by Openalex240730090724 (talk | contribs) (Set OpenAlex properties.)
(diff) ← Older revision | Latest revision (diff) | Newer revision → (diff)
scientific article
Language Label Description Also known as
English
Compiling OR-parallelism into AND-parallelism
scientific article

    Statements

    Compiling OR-parallelism into AND-parallelism (English)
    0 references
    0 references
    0 references
    1987
    0 references
    This paper suggests a general method for compiling OR-parallelism into AND-parallelism. An interpreter for an AND/OR-parallel language written in the AND-parallel subset of the language induces a source-to-source transformation from the full language into the AND-parallel subset. This transformation can be identified and implemented as a special purpose compiler or applied using a general purpose partial evaluator. The method is demonstrated to compile a variant of Concurrent Prolog into an AND-parallel subset of the language called Flat Concurrent Prolog (FCP). It is also shown applicable to the compilation of OR-parallel Prolog to FCP. The transformation identified is simple and efficient. The performance of the method is discussed in the context of programming examples. These compare well with conventionally compiled Prolog programs.
    0 references
    partial evaluation
    0 references
    program transformation
    0 references
    Concurrent Prolog
    0 references
    Flat Concurrent Prolog
    0 references
    examples
    0 references
    Prolog programs
    0 references
    0 references
    0 references

    Identifiers