Abstract
Reflection or metalevel architecture has received attention in recent years, since this approach provides functional extension and dynamic adaptation of computer systems. In this paper, we propose a technique to introduce reflection into a kind of algebraic system called rewriting logic. Since rewriting logic can model concurrent object-oriented systems, our technique enables modeling of reflective object-oriented systems including metaobjects and metaobject protocols. A framework for developing denotational semantics is given based on a category-theoretic model. We present some problems for finishing our semantics which remain unsolved.
This is a preview of subscription content, log in via an institution.
Preview
Unable to display preview. Download preview PDF.
References
O. Danvy and K. Malmkjær. Intensions and extensions in a reflective tower. In Proc. LFP'88, pp. 327–341, 1988.
D. Friedman and M. Wand. Reification: Reflection without metaphysics. In Proc LFP'84, pp. 348–355, 1984.
Gregor Kiczales, Jim des Rivierés, and Daniel G. Bobrow. The Art of the Metaobject Protocol. The MIT Press, 1991.
Fumihiro Kumeno, Yasuyuki Tahara, Akihiko Ohsuga, and Shinichi Honiden. Evolutional agents: Field oriented programming language, Flage. In APSEC'95, 1995.
Masahito Kurihara and Azuma Ohuchi. An algebraic specification and an object-oriented implementation of a reflective language. In Akinori Yonezawa and Brian C. Smith, editors, Reflection And Meta-Level Architecture, Proceedings of the International Workshop on New Models for Software Architecture, pp. 137–142, 1992.
José Meseguer. A logical theory of concurrent objects. In ECOOP/OOPSLA'90, pp. 101–115, October 1990.
José Meseguer. Rewriting as a unified model of concurrency. In Proceedings of the Concur'90 Conference, Amsterdam, August 1990, pp. 384–400. Springer LNCS 458, 1990.
José Meseguer. Conditional rewriting logic as a unified model of concurrency. Theoretical Computer Science, Vol. 96, pp. 73–155, 1992.
José Meseguer, Kokichi Futatsugi, and Timothy Winkler. Using rewriting logic to specify, program, integrate, and reuse open concurrent systems of cooperating agents. In Proc. of the International Symposium on New Models for Software Architecture, pp. 61–106, November 1992.
Shin Nakajima. What makes a language reflective and how? In Akinori Yonezawa and Brian C. Smith, editors, Reflection And Meta-Level Architecture, Proceedings of the International Workshop on New Models for Software Architecture, pp. 125–136, 1992.
B. C. Smith. Reflection and semantics in lisp. In Proc. POPL'84, pp. 23–35, 1984.
M. Wand and Friedman D. The mystery of the tower revealed: A non-reflective description of the reflective tower. In P, Maes and D. Nardi, editors, Meta-Level Architectures and Reflection, pp. 111–134. North-Holland, 1988.
Author information
Authors and Affiliations
Corresponding authors
Editor information
Rights and permissions
Copyright information
© 1996 Springer-Verlag Berlin Heidelberg
About this paper
Cite this paper
Tahara, Y., Kumeno, F., Ohsuga, A., Honiden, S. (1996). An algebraic semantics of reflective objects. In: Futatsugi, K., Matsuoka, S. (eds) Object Technologies for Advanced Software. ISOTAS 1996. Lecture Notes in Computer Science, vol 1049. Springer, Berlin, Heidelberg. https://doi.org/10.1007/3-540-60954-7_50
Download citation
DOI: https://doi.org/10.1007/3-540-60954-7_50
Published:
Publisher Name: Springer, Berlin, Heidelberg
Print ISBN: 978-3-540-60954-4
Online ISBN: 978-3-540-49747-9
eBook Packages: Springer Book Archive