Skip to main content

Hybrid group reflective architecture for object-oriented concurrent reflective programming

  • Conference paper
  • First Online:
Book cover ECOOP'91 European Conference on Object-Oriented Programming (ECOOP 1991)

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

Included in the following conference series:

Abstract

The benefits of computational reflection are the abilities to reason and alter the dynamic behavior of computation from within the language framework. This is more beneficial in concurrent/distributed computing, where the complexity of the system is much greater compared to sequential computing; we have demonstrated various benefits in our past research of Object-Oriented Concurrent Reflective (OOCR) architectures. Unfortunately, attempts to formulate reflective features provided in practical reflective systems, such as resource management, have led to some difficulties in maintaining the linguistic lucidity necessary in computational reflection. The primary reason is that previous OOCR architectures lack the ingredients for group-wide object coordination. We present a new OOCR language with a hybrid group reflective architecture, ABCL/R2, whose key features are the notion of heterogeneous object groups and coordinated management of group shared resources. We describe and give examples of how such management can be effectively modeled and adaptively modified/controlled with the reflective features of ABCL/R2. We also identify that this architecture embodies two kinds of reflective towers, individual and group.

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. Gul Agha. ACTORS: A Model of Concurrent Computation in Distributed Systems. The MIT Press, 1986.

    Google Scholar 

  2. Christopher Burdorf and Jed Marti. Non-preemptive time warp scheduling algorithm. Operating Systems Review, 24(2):7–18, April 1990.

    Article  Google Scholar 

  3. Andrew Chien and William J. Dally. Concurrent aggregates. In Proceedings of ACM SIGPLAN Symposium on Principles and Practice of Parallel Programming (PPOPP), pages 187–196. SIGPLAN Notices, March 1990.

    Google Scholar 

  4. Olivier Danvy and Karoline MalmkjÆr. Intensions and extensions in the reflective tower. In Proceedings of the ACM Conference on LISP and Functional Programming, pages 327–341. ACM Press, 1988.

    Google Scholar 

  5. Jacques Ferber. Conceptual reflection and Actor languages. In Pattie Maes and Daniele Nardi, editors, Meta-Level Architectures and Reflection, pages 177–193. North-Holland, 1988.

    Google Scholar 

  6. Jacques Ferber. Computational reflection in class-based object-oriented languages. In Proceedings of OOPSLA'89, volume 24, pages 317–326. SIGPLAN Notices, ACM Press, October 1989.

    Google Scholar 

  7. David R. Jefferson. Virtual Time. ACM Transactions on Programming Languages and Systems, 7(3):404–425, July 1985.

    Article  MathSciNet  Google Scholar 

  8. Luping Liang, Samuel T. Chanson, and Gerald W. Newfeld. Process groups and group communications: Classifications and requirements. IEEE Computer, pages 56–66, February 1990.

    Google Scholar 

  9. Pattie Maes. Concepts and experiments in computational reflection. In Proceedings of OOPSLA'87, volume 22, pages 147–155. SIGPLAN Notices, ACM Press, October 1987.

    Google Scholar 

  10. Pattie Maes. Issues in computational reflection. In Pattie Maes and Daniele Nardi, editors, Meta-Level Architectures and Reflection, pages 21–35. North-Holland, 1988.

    Google Scholar 

  11. Satoshi Matsuoka and Akinori Yonezawa. Metalevel solution to inheritance anomaly in concurrent object-oriented languages. In Proceedings of the ECOOP/OOPSLA '90 Workshop on Reflection and Metalevel Architectures in Object-Oriented Programming, October 1990.

    Google Scholar 

  12. Flavio De Paoli and Mehdi Jazayeri. FLAME: a language for distributed programming. In Proceedings of the 1990 IEEE International Conference on Programming Languages, pages 69–78, 1990.

    Google Scholar 

  13. Ramana Rao. Implementational reflection in Silica. In Proceedings of ECOOP'91. Springer-Verlag, July 1991.

    Google Scholar 

  14. Brian C. Smith. Reflection and semantics in Lisp. In Conference Record of the ACM Symposium on Principles of Programming Languages, pages 23–35. ACM Press, 1984.

    Google Scholar 

  15. Brian C. Smith. What do you mean, meta? In Proceedings of the ECOOP/OOPSLA '90 Workshop on Reflection and Metalevel Architectures in Object-Oriented Programming, October 1990.

    Google Scholar 

  16. Tomoyuki Tanaka. Actor-based reflection without meta-objects. Technical Report RT-0047, IBM Research, Tokyo Reserach Laboratory, August 1990.

    Google Scholar 

  17. Tomoyuki Tanaka and Shigeru Uzuhara. Multiprocessor Common Lisp on TOP-1. In Proceedings of the IEEE Symposium on Parallel and Distributed Processing, 1990. (to appear).

    Google Scholar 

  18. Frank van Harmlen. A classification of meta-level architectures. In Abramson and Rogers, editors, Meta-Programming in Logic Programming, chapter 5, pages 103–122. The MIT Press, 1989.

    Google Scholar 

  19. Mitchell Wand and Danel P. Friedman. The mystery of the tower revealed: A non-reflective description of the reflective tower. In Pattie Maes and Daniele Nardi, editors, Meta-Level Architectures and Reflection, pages 111–134. North-Holland, 1988.

    Google Scholar 

  20. Takuo Watanabe and Akinori Yonezawa. Reflection in an object-oriented concurrent language. In Proceedings of OOPSLA '88, volume 23, pages 306–315. SIGPLAN Notices, ACM Press, September 1988.

    Google Scholar 

  21. Takuo Watanabe and Akinori Yonezawa. An actor-based metalevel architecture for group-wide reflection. In Proceedings of the REX School/Workshop on Foundations of Object-Oriented Languages (REX/FOOL), Noordwijkerhout, the Netherlands, Lecture Notes in Computer Science. Springer-Verlag, May 1990.

    Google Scholar 

  22. Yasuhiko Yokote, Fumio Teraoka, and Mario Tokoro. A reflective architecture for an object-oriented distributed operating system. In Stephen Cook, editor, Proceedings of ECOOP'89, pages 89–106. Cambridge University Press, 1989.

    Google Scholar 

  23. Akinori Yonezawa, editor. ABCL: An Object-Oriented Concurrent System. Computer Systems Series. The MIT Press, 1990.

    Google Scholar 

  24. Akinori Yonezawa and Takuo Watanabe. An introduction to object-based reflective concurrent computations. In Proceedings of the 1988 ACM SIGPLAN Workshop on Object-Based Concurrent Programming, volume 24, pages 50–54. SIGPLAN Notices, ACM Press, April 1989.

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Pierre America

Rights and permissions

Reprints and permissions

Copyright information

© 1991 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Matsuoka, S., Watanabe, T., Yonezawa, A. (1991). Hybrid group reflective architecture for object-oriented concurrent reflective programming. In: America, P. (eds) ECOOP'91 European Conference on Object-Oriented Programming. ECOOP 1991. Lecture Notes in Computer Science, vol 512. Springer, Berlin, Heidelberg. https://doi.org/10.1007/BFb0057025

Download citation

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

  • Published:

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-54262-9

  • Online ISBN: 978-3-540-47537-8

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics