Skip to main content

Implementational reflection in Silica

  • Conference paper
  • First Online:
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 value of computational reflection has been explored in a number of programming language efforts. The major claim of this paper is that an ostensibly broader view of reflection, which we call implementational reflection, can be applied to the design of other kinds of systems, accruing the same benefits that arise in the programming language case. The domain of window systems in general, and the Silica window system in particular are used to illustrate how reflection can be applied more broadly. Silica is a CLOS-based window system that is a part of the Common Lisp Interface Manager, an emerging user interface programming standard for Common Lisp.

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. ANSI, New York, NY. Graphical Kernal System (GKS) Functional Description, 1985. ANSI X3.124-1985 and ISO 7942.

    Google Scholar 

  2. D.G. Bobrow, K. Kahn, G. Kiczales, L. Masinter, M. Stefik, and F. Zdybel. Common-Loops: Merging Lisp and Object-Oriented Programming. In OOPSLA '86 Conference Proceedings, Sigplan Notices 21 (11). ACM, Nov 1986.

    Google Scholar 

  3. R. Burton, R. Kaplan, L. Masinter, B. Sheil, A. Bell, D. Bobrow, L.P. Deutsch, and W.S. Haugeland. Papers on Interlisp-D. Technical report, Xerox PARC, 1980.

    Google Scholar 

  4. K. Bowen. Meta-level Techniques in Logic Programming. In Proceedings of the International Conference on Artificial Intelligence and its Applications, 1986.

    Google Scholar 

  5. Paul Calder and Mark Linton. Glyphs: Flyweight Objects for User Interfaces. In Proceedings of the ACM SIGGRAPH Symposium on User Interface Software and Technology, pages 92–101. ACM Press, Oct 1990.

    Google Scholar 

  6. P. Cointe. Metaclasses are First Class: the ObjVlisp Model. In OOPSLA '87 Conference Proceedings, Sigplan Notices 22 (12). ACM, Dec 1987.

    Google Scholar 

  7. R. Davis. Meta-rules: Reasoning about Control. Artificial Intelligence, 15, 1980.

    Google Scholar 

  8. Richard Helm, Ian M. Holland, and Dipayan Gangopadhyay. Contracts: Specifying Behavior Compositions in Object-oriented Systems. In OOPSLA/ECOOP '90 Conference Proceedings, Sigplan Notices 25 (10). ACM, Nov 1990.

    Google Scholar 

  9. M.H. Ibrahim and F.A Cummins. KSL: A Reflective Object-Oriented Programming Language. In Proceedings of the IEEE Computer Society International Conference on Computer Languages, 1988.

    Google Scholar 

  10. Gregor Kiczales, Jim des Rivières, and Daniel Bobrow. The Art of the Metaobject Protocol. MIT Press, 1991.

    Google Scholar 

  11. Glenn Krasner and Stephen Pope. A Cookbook for Using the Model-View-Controller User Interface Paradigm in Smalltalk-80. Journal on Object-Oriented Programming, August/September 1988.

    Google Scholar 

  12. Gregor Kiczales and Luis Rodriguez. Efficient Method Dispatch in PCL. In Proceedings 1990 ACM Conference on Lisp and Functional Programming, pages 99–105. ACM, June 1990.

    Google Scholar 

  13. H. Lieberman. Using Prototypical Objects to Implement Shared Behavior in Object-Oriented Systems. In OOPSLA '86 Conference Proceedings, Sigplan Notices 21 (11). ACM, Nov 1986.

    Google Scholar 

  14. Wilf LaLonde and John Pugh. Inside Smalltalk: Volume II. Prentice-Hall, Inc, Englewood Cliffs, NJ, 1991.

    Google Scholar 

  15. P. Maes. Concepts and Experiments in Computational Reflection. In OOPSLA '87 Conference Proceedings, Sigplan Notices 22 (12). ACM, Dec 1987.

    Google Scholar 

  16. Pattie Maes. Issues in Reflection. In P. Maes and D. Nardi, editors, Meta-Level Architectures and Reflections. North Holland, 1988.

    Google Scholar 

  17. Open Software Foundation, Cambridge, MA. OSF/MOTIF Manual, 1989.

    Google Scholar 

  18. Ramana Rao, William York, and Dennis Doughty. A Guided Tour of the Common Lisp Interface Manager. Lisp Pointers, 4(1), 1991.

    Google Scholar 

  19. R.W. Scheifler and J. Gettys. The X Window System. ACM Transactions on Graphics, 5(2), 1986.

    Google Scholar 

  20. Brian Smith. Reflection and Semantics in a Procedural Language. Technical Report 272, Massachusetts Institute of Technology, Laboratory for Computer Science, Cambridge, MA, 1982.

    Google Scholar 

  21. Brian Smith. Reflection and Semantics in Lisp. In Proceedings of the 1984 ACM Principles of Programming Language Conference, pages 23–35. ACM, Dec 1984.

    Google Scholar 

  22. Sun Microsystems, Mountain View, CA. Programmer's Reference Manual for the Sun Window System, 1986.

    Google Scholar 

  23. Sun Microsystems. NeWS Technical Overview, 1987.

    Google Scholar 

  24. Symbolics, Inc, Burlington, MA. Programmer's Reference Manual Vol 7: Programming the User Interface.

    Google Scholar 

  25. Richard Weyhrauch. Prolegomena to a Theory of Mechanised Formal Reasoning. Artificial Intelligence, 13, 1980.

    Google Scholar 

  26. T. Watanabe and A. Yonezawa. Reflection in an Object-Oriented Concurrent Language. In OOPSLA '88 Conference Proceedings, Sigplan Notices 23 (11). ACM, Nov 1988.

    Google Scholar 

  27. M. Young, A. Tevanian, R. Rashid, D. Golub, J. Chew J. Eppinger, W. Bolosky, D. Black, and R. Baron. The Duality of Memory and Communication in the Implementation of a Multiprocessor Operating System. In Proceedings of the 11th Symposium on Operating System Principles. ACM, Nov 1987.

    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

Rao, R. (1991). Implementational reflection in Silica. 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/BFb0057026

Download citation

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

  • 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