Abstract
Computational reflection makes it easy to solve problems that are otherwise difficult to address in Smalltalk-80, such as the construction of monitors, distributed objects, and futures, and can allow experimentation with new inheritance, delegation, and protection schemes. Full reflection is expensive to implement. However, the ability to override method lookup can bring much of the power of reflection to languages like Smalltalk-80 at no cost in efficiency.
- Agha 1986 Gul Agha ACTORS: A Model of Concurrent Computation in Distributed Systems MIT Press, 1986 Google ScholarDigital Library
- Bennett 1987 John K. Bennett The Design and Implementation of Distributed Smalltalk OOPSLA '87 Proceedings Orlando, FL, October 4-8 1977 pages 118-330 Google ScholarDigital Library
- Bobrow 1988a D. G. Bobrow, L. G. DeMichiel, R. P. Gabriel, S. E. Keene, G. Kiczales, and D. A. Moon Common Lisp Object System Specification X3J 13 Document 88-002R SIGPLAN Notices, Volume 23, Special Issue, September 1988 Google ScholarDigital Library
- Bobrow 1988b Daniel (3. Bobrow and Gregor Kiczales The Common Lisp Object System Metaobject Kernel--A Status Report Proceedings of the 1988 Conference on Lisp and Functional Programming Google ScholarDigital Library
- Deutsch 1984 L. Peter Deutsch and Allan M. Schiffman Efficient Implementation of the Smalltalk-80 System Proceedings of the Tenth Annual ACM Symposiu on Principles of Programming Languages, 1983, pages 297-302 Google ScholarDigital Library
- Foote 1988 Brian Foote Designing to Facilitate Change with Object-Oriented Frameworks Masters Thesis, 1988 University of illinois at Urbana-ChampaignGoogle Scholar
- Goldberg 1976 Adele Goldberg and Alan Kay, editors with the Learning Research Group Smalltalk-72 Instruction Manual Xerox Palo Alto Research CenterGoogle Scholar
- Goldberg 1983 Adele Goldberg and David Robson Smalltalk-80: The Language and its Implementation Addison-Wesley, Reading, MA, 1983 Google ScholarDigital Library
- Goldberg 1984 Adele Goldberg Smalltalk-80: The interactive Programming Environment Addison-Wesley, Reading, MA, 1984 Google ScholarDigital Library
- Halstead 1985 R. Halstead MultiLISP: A language for Concurrent Symbolic Computation ACM Transactions on Programming Languages and Systems October 1985, pages 501-538 Google ScholarDigital Library
- Hewitt 1983 Carl Hewitt and Peter de Jong Analyzing the Role of Description and Actions in Open Systems AAAI '83, pages 162-167Google Scholar
- Ingalls 1978 Daniel H. H. Ingalls The Smalltaik-76 Programming System Design and Implementation 5th ACM Symposium on POPL, pp. 9-15 Tucson, AZ, USA, January 1978 Google ScholarDigital Library
- Johnson 1988a Ralph E. Johnson and Brian Foote Designing Reusable Classes Journal of Object-Oriented Programming Volume 1, Number 2, June/July 1988 pages 22-35Google Scholar
- Johnson 1988b Ralph E. Johnson, Justin O. Graver, and Laurance W. Zurawski TS: An Optimizing Compiler for Smalltalk OOPSLA '88 Proceedings San Diego, CA, September 25-30, 1988 pages 18-26 Google ScholarDigital Library
- Keene 1989 Sonya E. Keene Object-Oriented Programming in Common Lisp A Programmer's introduction to CLOS Addison-Wesley, 1989 Google ScholarDigital Library
- LaLonde 1986 Wilf R. LaLonde, Dave A. Thomas and John R. PL An Exemplar Based Smalltalk OOPSLA '86 Proceedings Portland, OR, October 4-8 1977 pages 322-330 Google ScholarDigital Library
- LaLonde 1988 Will R. LaLonde and Mark Van Gutik Building a Backtracking Facility in Smalltalk Witho Kernel Support OOPSLA '88 Proceedings San Diego, CA, September 25-30, 1988 pages 105-122 Google ScholarDigital Library
- Lieberman 1986 Henry Lieberman Using Protypical Objects to Implement Shared Behavior in Object-Oriented Systems OOPSLA '86 Proceedings Portland, OR, October 4-8 1977 pages 214-223 Google ScholarDigital Library
- Maes 1987a Pattie Maes Computational Reflection Artificial Intelligence Laboratory Vrije Universiteit Brussel Technical Report 87-2Google Scholar
- Maes 1987b Pattie Maes Concepts and Experiments in Computational Reflection OOPSLA '87 Proceedings Orlando, FL, October 4-8 1977 pages 147-155 Google ScholarDigital Library
- McCullough 1987 Paul L. McCullough Transparent Forwarding: First Steps OOPSLA '87 Proceedings Orlando, FL, October 4-8 1977 pages 331-341 Google ScholarDigital Library
- Messick 1985 Steven L. Messick and Kent L. Beck Active Variables in Smalltalk-80 Technical Report CR-85-0g Computer Research Lab, Tektronix, Inc., 1985Google Scholar
- Pascoe 1986 Geoffrey A. P ascoe Encapsulators: A New Software Paradigm in Smalltalk-80 OOPSLA '86 Proceedings Portland, OR, September 29-October 2 1986, pages 341-346 Google ScholarDigital Library
- Smith 1983 Brian Cantwell Smith Reflection and Semantics in Lisp Proceedings of the 1984 ACM Principles of Programming Languages ConfereJ pages 23-35 Google ScholarDigital Library
- Smith 1987 Randall B. Smith Experiences with the Alternate Reality Kit: An Example of the Tension Between Literalism and Magic. CHI+GI 1987 Conference Proceedings Google ScholarDigital Library
- Stefik 1986a Mark Stefik and Daniel G. Bobrow Object-Oriented Programming: Themes and Variations At Magazine 6(4): 40-62, Winter, 1986 Google ScholarDigital Library
- Stefik 1986b M. Stefik, D. Bobrow and K. Kahn integrating Access-Oriented Programming into a Multiprogramming Environment IEEE Software, 3, 1 (January 1986), 10-18Google ScholarDigital Library
- Stein 1987 Lynn Andea Stein Delegation is Inhertance OOPSLA '87 Proceedings Orlando, FL, October 4-8 1977 pages 138-146 Google ScholarDigital Library
- Stroustrup 1986 Bjarne Stroustrup The C++ Programming Language Addison-Wesley, Reading, MA, 1986 Google ScholarDigital Library
- Tiemann 1988 Michael D. Tiemann Solving the RPC problem in GNU C++ 1988 USENIX C++ Conference Denver, CO, October 17-21 1988Google Scholar
- Ungar 1987 David Ungar and Randall B. Smith Serf: The Power of Simplicity OOPSLA '87 Proceedings Orlando, FL, October 4-8 1977 pages 227-242 Google ScholarDigital Library
- Yokote 1986 Yasuhiko Yokote and Mario Tokoro The Design and Implementation of ConcurrentSmalitalk OOPSLA '86 Proceedings Portland, OR, September 2g-October 2 1986, pages 331-340 Google ScholarDigital Library
- Watanabe 1988 Takuo Watanabe and Akinori Yonezawa Reflection in an Object-Oriented Concurrent Language OOPSLA '88 Proceedings San Diego, CA, September 25-30, 1988 pages 306-315 Google ScholarDigital Library
Index Terms
- Reflective facilities in Smalltalk-80
Recommendations
Reflective facilities in Smalltalk-80
OOPSLA '89: Conference proceedings on Object-oriented programming systems, languages and applicationsComputational reflection makes it easy to solve problems that are otherwise difficult to address in Smalltalk-80, such as the construction of monitors, distributed objects, and futures, and can allow experimentation with new inheritance, delegation, and ...
Programming with explicit metaclasses in Smalltalk-80
OOPSLA '89: Conference proceedings on Object-oriented programming systems, languages and applicationsThis paper discusses the introduction of explicit metaclasses á la ObjVlisp into the Smalltalk-80 language. The rigidity of Smalltalk metaclass architecture motivated this work. We decided to implement the ObjVlisp model into the standard Smalltalk-80 ...
Programming with explicit metaclasses in Smalltalk-80
Special issue: Proceedings of the 1989 ACM OOPSLA conference on object-oriented programmingThis paper discusses the introduction of explicit metaclasses á la ObjVlisp into the Smalltalk-80 language. The rigidity of Smalltalk metaclass architecture motivated this work. We decided to implement the ObjVlisp model into the standard Smalltalk-80 ...
Comments