Skip to main content
Log in

Bounded-wait merge in Shapiro’s Concurrent Prolog

  • Regular Papers
  • Published:
New Generation Computing Aims and scope Submit manuscript

Abstract

InA Subset of Concurrent Prolog and Its Interpreter (1983), E. Y. Shapiro introduces the language Concurrent Prolog. In his presentation, the problem of guaranteeing bounded-waiting during a merge operation is used as a programming example. Solutions are proposed for binary and n-ary merges. The solutions are, however, completely dependent on specific operational characteristics of a Concurrent Prolog machine or interpreter.

This paper presents an alternate approach in which the property of bounded-waiting is incorporated into the semantics of the programs, demonstrable given only the computational model of the language. The solution strategy is to utilize the familiar systems programming techniques of block-on-input and busy-wait. This approach requires that the language be augmented with a metalogical predicate analogous to thevar(_) predicate of Sequential Prolog. The resultant programs are interesting and illustrative examples of Concurrent Prolog as a programming 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. Clark, K. L. and Gregory, S.: “A Relational Language for Parallel Processing,” Proceedings of the ACM Conference on Functional Programming Languages and Computer Architectures (ACM, Portsmouth, October 1981) 171–178.

  2. Shapiro, E. Y.: “A Subset of Concurrent Prolog and Its Interpreter,” ICOT Technical Report,TR-003 (ICOT, Tokyo, January 1983).

  3. Shapiro, E. Y. and Takeuchi, A.: “Object Oriented Programming in Concurrent Prolog,” New Generation Computing1, No. 1 (OHMSHA, LTD. and Springer-Verlag, 1983) 25–48.

    Article  Google Scholar 

  4. van Emden, M. H. and de Lucena, G. J.: “Predicate Logic as a Programming Language for Parallel Programming,” Logic Programming (ed. K. L. Clark and S.-Å. Tärnlund) (Academic Press, London, 1982) 189–198.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

About this article

Cite this article

Kusalik, A.J. Bounded-wait merge in Shapiro’s Concurrent Prolog. NGCO 2, 157–169 (1984). https://doi.org/10.1007/BF03037100

Download citation

  • Received:

  • Issue Date:

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

Keywords

Navigation