ABSTRACT
This 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 system. The resulting combination defines the Classtalk platform. This platform provides a full-size environment to experiment with class-oriented programming by combining implicit metaclasses á la Smalltalk and explicit metaclasses á la ObjVlisp. Obviously, these experiments are not limited to the Smalltalk world and will be useful to understand and practice the metaclass concept advocated by modern object-oriented languages such as ObjVlisp and CLOS.
- Attardi&al89.G. Attardi, C. Bonini, M.-R. Boscotrecase, T. Flagella and M. Gaspari, Metalevel Programming in CLOS, ECOOP'89, Cambridge University Press, July 1989.Google Scholar
- Bobrow&Kiczales88.D.G. Bobrow and G. Kiczales, The Common Lisp Object System Metaobject Kernel: A Status Report, ACM Conference on Lisp and Functional Programming (LFP'88), pages 309-315, July 1988. Google ScholarDigital Library
- Borning&OShea87.A. Borning and T. O'Shea, Deltatalk: An Empirically and Aesthetically Motivated Simplification of the Smalltalk-80 Language, ECOOP'87, LNCS, No 276, pages 1-I0, Springer- Verlag, June 1987. Google ScholarDigital Library
- Briot&Cointe87.J.-P. Briot and P. Cointe, A Uniform Model for Object-Oriented Languages Using The Class Abstraction, IJCAr87, Vol. 1, pages 40-43, August 1987.Google Scholar
- Cointe87.P. Cointe, Metaclasses are First Class: the ObjVlisp Model, OOPSLA'87, pages 156-167. Google ScholarDigital Library
- Cointe&Graube88.P. Cointe and N. Graube, Programming with Metaclasses in CLOS, First CLOS Users and Implementors Workshop, Xerox Parc, Palo Alto CA, USA, pages 23-29, October 1988.Google Scholar
- Cointe88.P. Cointe, A Tutorial Introduction to Metaclass Architecturesas Provided by ClassOriented Languages, International Conference on Fifth Generation Computer Systems (FGCS'88), Vol. 2, pages 592-608, Icot, Tokyo, Japan, November-December 1988.Google Scholar
- Goldberg&Robson83.A. Goldberg and D. Robson, Smalltalk-80: the Language and its Implementation, Series in Computer Science, Addison Wesley, 1983. Google ScholarDigital Library
- Graube89.N. Graube, M e t a c l a s s Compatibility, in same volume. Google ScholarDigital Library
- Ingalls&Borning82.D.H.H. ingalls and A.H. Borning, Multiple inheritance in Smalltalk-80, Proceedings of the National Conference on Artificial Intelligence, pages 234-237, USA, August 1982.Google Scholar
- Malenfant&al89.Malenfant, G. Lapalme and J. Vaucher, ObjVProlog: Metaclasses in Logic, ECOOP'89, Cambridge University Press, July 1989.Google Scholar
- Ungar&Smith87.D. Ungar and R.B. Smith, Self: The Power of Simplicity, OOPSLA'87, pages 227-242. Google ScholarDigital Library
- Wolinski89.F. Wolinski, Le Systdme MV2C~ Modglisation et Ggndration dTnterfaces Homme-Machine, Report 89/38, Laforia, Universit6 Pierre et Marie Curie, Paris, April 1989.Google Scholar
Index Terms
- Programming with explicit metaclasses in Smalltalk-80
Recommendations
Smalltalk and exploratory programming
Using Smalltalk-80, programmers can produce prototypes much faster than with C or Pascal. What techniques do Smalltalk-80 programmers use to produce these prototypes? What is special about Smalltalk-80 that enables them to uses these techniques? Can ...
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 ...
Object-oriented programming in Smalltalk and ADA
Though Ada and Modula-2 are not object-oriented languages, an object-oriented viewpoint is crucial for effective use of their module facilities. It is therefore instructive to compare the capabilities of a modular language such as Ada with an archetypal ...
Comments