Skip to main content
Log in

Flat Parlog: A basis for comparison

  • Published:
International Journal of Parallel Programming Aims and scope Submit manuscript

Abstract

Three similar parallel logic programming languages have been proposed; Parlog, Flat Concurrent Prolog, and Guarded Horn Clauses. Quantitative comparison of the languages has not previously been possible since they employ different execution models and implementation techniques. In order to uncover the effects of semantic differences on efficiency, a common basis is required for experimentation. This paper presents a subset of the languageParlog calledFlat Parlog which provides a basis for quantitative comparison. The language combines the directional semantics of Parlog with the simple execution model of Flat Concurrent Prolog. A performance comparison between Flat Parlog and Flat Concurrent Prolog based on new implementations of both languages is presented. These new implementations are identical except for optimizations that are possible by virtue of semantic differences. Benchmark results indicate that Flat Parlog is more efficient; experiments have been able to quantify and explain this performance differential. A detailed description of the abstract machine for Flat Parlog is presented to illustrate the simplicity of the language.

This is a preview of subscription content, log in via an institution to check access.

Access this article

Price excludes VAT (USA)
Tax calculation will be finalised during checkout.

Instant access to the full article PDF.

Similar content being viewed by others

References

  1. C. Mierowsky, S. Taylor, E. Shapiro, J. Levy, and M. Safra, The design and implementation of Flat Concurrent Prolog, Technical Report CS85-09, Weizmann Institute, Rehovot (1985).

    Google Scholar 

  2. E. Shapiro, Concurrent Prolog: A Progress Report,IEEE Computer (August 1986).

  3. K. L. Clark and S. Gregory, PARLOG: parallel programming in logic, inACM Trans. on Programming Languages and Systems,8(1):1–49.

  4. K. Ueda,Guarded Horn Clauses, EngD thesis, University of Tokyo (1986).

  5. A. Takeuchi and K. Furukawa, Parallel logic programming languages, inProc. of the 3rd Intl Logic Programming Conf. (London, July), (ed.), E. Shapiro, New York, Springer-Verlag, pp. 242–254.

  6. S. Taylor, An Abstract Machine for Implementing FCP on Parallel Architectures, Weizmann Institute of Science (February 1986).

  7. S. Gregory,Parallel Logic Programming in PARLOG, Reading, Mass.: Addison-Wesley (1987).

    Google Scholar 

  8. S. Taylor and E. Shapiro, Compiling Guarded Logic Programs into Decision Graphs, Weizmann Institute of Science (February 1986).

  9. S. Safra, Partial Evaluation of Concurrent Prolog and its Implications, M.Sc. Thesis, CS86-24, Weizmann Institute of Science (July 1986).

  10. A. Houri and E. Shapiro, A sequential abstract machine for Flat Concurrent Prolog, Weizmann Institute Technical Report CS86-19, Rehovot (1986).

  11. S. Gregory, I. T. Foster, A. D. Burt, and G. A. Ringwood, An abstract machine for the implementation of PARLOG on uniprocessors. Submitted for publication.

  12. K. L. Clark and S. A. Tarnlund, A first order theory of data and programs, inInformation Processing 77; Proc. of the IFIP Congress 77 (ed.), B. Gilchrist, Amsterdam: Elsevier/Nother Holland, pp. 939–944.

  13. S. Taylor, S. Safra, and E. Shapiro, Parallel execution of Flat Concurrent Prolog, inIntl. Journal of Parallel Programming,15(3):245–275.

  14. D. H. D. Warren, An abstract Prolog instruction set. Technical note 309, SRI International, Menlo Park, California.

  15. M. Codish and E. Shapiro, Compiling Or-parallelism to And-parallelism, inProc. of the 3rd Intl. Logic Programming Conf. (London, July), (ed.), E. Shapiro, New York, Springer-Verlag, pp. 283–297.

  16. I. T. Foster, Logic operating systems: design issues, inProc. 4th Intl. Conf. on Logic Programming, Melbourne (May 1987).

Download references

Author information

Authors and Affiliations

Authors

Rights and permissions

Reprints and permissions

About this article

Cite this article

Foster, I., Taylor, S. Flat Parlog: A basis for comparison. Int J Parallel Prog 16, 87–125 (1987). https://doi.org/10.1007/BF01379097

Download citation

  • Received:

  • Accepted:

  • Issue Date:

  • DOI: https://doi.org/10.1007/BF01379097

Key Words

Navigation