Skip to main content
Log in

The languages FCP(:) and FCP(:,?)

  • Special Issue
  • Parallel/Concurrent Languages
  • Published:
New Generation Computing Aims and scope Submit manuscript

Abstract

The language FCP(:,?) is the outcome of attempts to integrate the best of several flat concurrent logic programming languages, including Flat GHC, FCP (↓, |) and Flat Concurrent Prolog, in a single consistent framework. FCP(:) is a subset of FCP(:, ?), which is a variant of FPP(↓, |) and employs concepts of the concurrent constraint framework of cc(↓, |). FCP(:, ?) is a language which is strong enough to accommodate all useful concurrent logic programming techniques, including those which rely on atomic test unification and read-only variables, yet incorporates the weaker languages mentioned as subsets. This allows the programmer to remain within a simple subset of the language such as Flat GHC when the full power of atomic unification or read-only variables is not needed.

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 practical programming,”Proc. Conf. on Functional Programming Languages and Computer Architectures, ACM, pp. 171–178, October, 1981. Also Chapter 1 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

  2. Clark, K. L. and Gregory, S., “PARLOG: Parallel programming in logic,”Research Report DOC 84/4, Department of Computing Imperial College, April, 1984. Also Chapter 3 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987).

  3. Foster, I., “Parallel implementation of parlog,”Proceedings International Conference of Parallel Processing, 1988.

  4. Foster, I. and Taylor, S., “Flat parlog: a basis for comparison,”Int. Journal of Parallel Programming, Vol. 16, No. 2, 1987.

  5. Gerth, R., Codish, M., Lichtenstein, Y. and Shapiro, E., “Fully abstract denotational semantics for flat concurrent prolog”,Proc. 3rd IEEE Symp. on Logic in Computer Science, IEEE, pp. 320–333, 1988.

  6. Gaifman, H., Maher, M. J. and Shapiro, E., “Reactive behavior semantics for concurrent constraint logic programs,”Proc. North American Conference on Logic Programing (Lusk, E. L. and Overbeek, R. eds.), MIT Press, October, 1989.

  7. Gallagher, J. and Shapiro, E., “Using safe approximations of fixed points for analysis of logic programs,META88, Proc. of the Workshop on Meta-Programming in Logic Programming, pp. 185–198, June, 1988.

  8. Kimura, Y. and Chikayama, T., “An abstract k11 machine and its instruction set,”Proc. of 1987 Symposium of Logic Programming, pp. 468–477, 1987.

  9. Kliger S. and Shapiro, E., “A decision tree compilation algorithm for fcp(:,?),Proc. of the 5th International Conference of Logic Programming and Symposium of Logic Programming (Bowen, K. and Kowalski, R. A. eds.), MIT Press, pp. 1315–1336, 1988.

  10. Lloyd, J.,Foundations of Logic Programming, 2nd ed. Springer-Verlag, 1987.

  11. Lichtenstein, Y. and Shapiro, E., “Concurrent Algorithmic Debugging,”Technical Report, CS87-20, Department of Computer Science, Weizmann Institute of Science, Rehovot, 1987. Also inProc. of the ACM Workshop on Parallel Debugging, 1988.

  12. Maher, M. J., “Logic semantics for a class of committed-choice programs,”Proc. of the 4th International Conference of Logic Programming (Lassez, J. L. ed.), MIT Press, pp. 858–876, 1987.

  13. Mierowsky, C., Taylor, S., Shapiro, E., Levy, J. and Safra, M., “The design and implementation of Flat Concurrent Prolog,”Technical Report, CS85-09, Department of Computer Science, Weizmann Institute of Sceince, Rehovot, 1986.

    Google Scholar 

  14. Saraswat, V. A., “Merging many streams efficiently: the importance of atomic commitment,” Chapter 16 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

  15. Saraswat, V. A., “Partial correctness semantics for cp[↓, |, &],”Proc. 5th Conference on Foundations of Software Technology and Theoretical Computer. Science, Lec. Notes in Comp. Sci., New Delhi, pp. 347–368, 1985.

  16. Saraswat, V. A., “A somewhat logical formulation of clp synchronization primitives,”Proc. of the 5th International Conference of Logic Programming and Symposium of Logic Programming (Bowen, K. and Kowalski, R. A. eds.), MIT Press, pp. 1298–1314, 1988.

  17. Saraswat, V. A., “Concurrent Constraint Programming Languages,”Ph. D. thesis, Computer Science Department, Carnegie-Mellon University, 1989.

  18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.

  19. Shapiro, E., “The Family of Concurrent Logic Programming Languages,”ACM Computing Surveys 21–3, pp. 412–510, September, 1989

  20. Safra, S. and Shapiro, E., “Meta interpreters for real,”Information Processing 86, North-Holand, pp. 271–278, 1961. Also Chapter 25 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

  21. Saraswat, V. A., Weinbaum, D., Kahn, K. and Shapiro, E., “Detecting stable properties of networks in concurrent logic programming langauges,”Proc. of the 7th Annual ACM Symposium on Principles of Distributed Computing, pp. 210–222, 1988.

  22. Takeuchi, A., “How to solve it in concurrent prolog,”Unpublished note, 1983.

  23. Taylor, S., “Parallel logic programming techniques,”Ph. D. thesis, Department of Computer Science, Weizmann Institute of Science, Rehovot, June, 1988.

    Google Scholar 

  24. Trible, E. D., Miller, M. S., Kahn, K., Bobrow, D. G., Abbott, C. and Shapiro, E., “Channels: a generalization of streams,” Chapter 17 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

  25. Taylor, S. Safra, S. and Shapiro, E., “Parallel implementation of flat concurrent prolog,”Int. Journal of Parallel Programming, Vol. 15, No. 3, pp. 245–275, 1985. Also Chapter 39 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

    Article  Google Scholar 

  26. Taylor, S., Shapiro, R. and Shapiro, E., “FCP: Initial Studies of Parallel Performance,”Technical Report, CS87-19, Department of Computer Science, Weizmann Institute of Science, Rehovot, October, 1987.

    Google Scholar 

  27. Ueda, K., “Guarded Horn Clauses,”ICOT Technical Report, TR-103, 1985. Also Chapter 4 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

  28. Hirsch, M., Siverman, W., Houri, A. and Shapiro, E., The Logix System User Manual, Version 1.3,”Technical Report, CS-21, Rehovot, 1988. Also Chapter 21 in Ref. 18. Shapiro, E. ed.,Concurrent Prolog, Collected Papers, MIT Press, 1987.)

Download references

Author information

Authors and Affiliations

Authors

About this article

Cite this article

Yardeni, E., Kliger, S. & Shapiro, E. The languages FCP(:) and FCP(:,?). NGCO 7, 89–107 (1990). https://doi.org/10.1007/BF03037201

Download citation

  • Received:

  • Issue Date:

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

Keywords

Navigation