Skip to main content

Concurrent object-oriented programming in Tempo++

  • Conference paper
  • First Online:
Concurrency and Parallelism, Programming, Networking, and Security (ASIAN 1996)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 1179))

Included in the following conference series:

Abstract

This paper describes Tempo++, a concurrent programming language which combines logic programming and object-oriented programming. Tempo++ improves on traditional concurrent logic programming languages (e.g. Parlog, KL1) and their object-oriented extensions (e.g. Polka) by explicitly specifying the safety properties of programs. The language provides a framework in which algorithms for a variety of paradigms can be expressed, derived and compared. In the language, concurrency issues are separated from the code, minimizing dependency between application functionality and concurrency control. It is, in general, possible to test different synchronisation schemes without modifying the code of the operations, and conversely, a synchronisation scheme may be reused by several applications. The main features of the language are illustrated by the implementation of a classical concurrent problem.

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

Access this chapter

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Abadi, M., and Manna, Z. 1989. Temporal logic programming. Journal of symbolic computation Vol.8, No. 3, pp. 277–295

    Google Scholar 

  2. Davison, A. 1991. From Parlog to Polka in Two Easy Steps, in PLILP'91: 3rd Int. Symp. on Programming Language Implementation and LP, Springer LNCS 528, pp.171–182, Passau, Germany, August.

    Google Scholar 

  3. Fisher M. 1993. Concurrent METATEM — A Language for Modelling Reactive Systems. In Proceedings of Parallel Architectures and Languages Europe, Germany.

    Google Scholar 

  4. Gregory, S. 1987. Parallel Logic Programming in PARLOG, Addison-Wesley.

    Google Scholar 

  5. Gregory, S. 1995. Derivation of concurrent algorithms in Tempo. In LOPSTR95: Fifth International Workshop on Logic Program Synthesis and Transformation.

    Google Scholar 

  6. Gregory, S. and Ramirez, R. 1995. Tempo: a declarative concurrent programming language. Proc.of the ICLP (Tokyo, June), MIT Press, 1995.

    Google Scholar 

  7. Kahn, K.M., Tribble, D., Miller, M.S., and Bobrow, D.G. 1987. Vulcan: Logical Concurrent Objects, In Research Directions in Object-Oriented Programming, B. Shriver, P. Wegner (eds.), MIT Press.

    Google Scholar 

  8. Kowalski R., and Sergot, M. 1986. A Logic-based Calculus of Events, New Generation Computing, Vol.4, No.1, February, pp.67–95

    Google Scholar 

  9. Ramirez, R. 1995. Declarative concurrent object-oriented programming in Tempo++. In Proceedings of the ICLP'95 Workshop on Parallel Logic Programming Japan, T. Chikayama, H. Nakashima and E. Tick (Ed.).

    Google Scholar 

  10. Ramirez, R. 1996. A logic-based concurrent object-oriented programming language, PhD thesis, Bristol University.

    Google Scholar 

  11. Saraswat V. 1993. Concurrent constraint programming languages, PhD thesis, Carnegie-Mellon University, 1989. Revised version appears as Concurrent constraint programming, MIT Press, 1993.

    Google Scholar 

  12. Shapiro, E., and Takeuchi, A. 1983. Object Oriented Programming in Concurrent Prolog, New Generation Computing 1, pp.25–48.

    Google Scholar 

  13. Ueda, K. and Chikayama, T. 1990. Design of the kernel language for the parallel inference machine. Computer Journal 33, 6, pp.494–500.

    Article  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Joxan Jaffar Roland H. C. Yap

Rights and permissions

Reprints and permissions

Copyright information

© 1996 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ramirez, R. (1996). Concurrent object-oriented programming in Tempo++. In: Jaffar, J., Yap, R.H.C. (eds) Concurrency and Parallelism, Programming, Networking, and Security. ASIAN 1996. Lecture Notes in Computer Science, vol 1179. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0027797

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-62031-0

  • Online ISBN: 978-3-540-49626-7

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics