Intersecting Classes and Prototypes

  • Wolfgang De Meuter
  • Theo D’Hondt
  • Jessie Dedecker
Conference paper
Part of the Lecture Notes in Computer Science book series (LNCS, volume 2890)

Abstract

The object-oriented programming language design space consists of class-based and prototype-based languages. Both families have been shown to posses their advantages and disadvantages. Hybrid languages featuring both prototype-based and class-based mechanisms have been proposed as a solution. Unfortunately these languages not only unify the advantages but also the disadvantages of both families. We propose a more intersectional point of view and propose a language that inherits the advantages but shuns the disadvantages of both families.

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. 1.
    Ungar, D., Smith, R.: Self: The Power of Simplicity. In: Proceedings of OOPSLA, vol. 22. ACM Press, New York (1987)Google Scholar
  2. 2.
    De Meuter, W.: Agora: The Scheme of Object-Orientation, or, the Simplest MOP in the World. In: Noble, J., Taivalsaari, A., Moore, I. (eds.) Prototype-based Programming: Concepts, Languages and Applications (1998)Google Scholar
  3. 3.
    Taivalsaari, A.: Classes vs. Prototypes: Some Philosophical and Historical Observations. In: Noble, J., Taivalsaari, A., Moore, I. (eds.) Prototype-based Programming: Concepts, Languages and Applications (1998)Google Scholar
  4. 4.
    Smith, W.: NewtonScript: Prototypes on the Palm. In: Noble, J., Taivalsaari, A., Moore, I. (eds.) Prototype-based Programming: Concepts, Languages and Applications (1998)Google Scholar
  5. 5.
    Van Belle, W., D’Hondt, T.: Agent mobility and reification of computational state: An experiment in migration. In: Wagner, T.A., Rana, O.F. (eds.) AA-WS 2000. LNCS (LNAI), vol. 1887, p. 166. Springer, Heidelberg (2001)CrossRefGoogle Scholar
  6. 6.
    Cardelli, L.: A language with distributed scope. Computing Systems 8 (1995)Google Scholar
  7. 7.
    Lieberman, H., Stein, L., Ungar, D.: Treaty of orlando. In: Addendum to OOPSLA, vol. 23, pp. 43–44. ACM Press, New York (1988)Google Scholar
  8. 8.
  9. 9.
    Dony, C., Malenfant, J., Bardou, D.: Classifying Prototype-based Programming Languages. In: Noble, J., Taivalsaari, A., Moore, I. (eds.) Prototype-based Programming: Concepts, Languages and Applications (1998)Google Scholar
  10. 10.
    Lieberman, H.: Using prototypical objects to implement shared behavior in object oriented systems. In: Meyrowitz, N. (ed.) Proceedings OOPSLA, vol. 22, pp. 214–223 (1987)Google Scholar
  11. 11.
    Ungar, D., Chambers, C., Chang, B., Hölzle, U.: Organizing programs without classes. Lisp and Symbolic Computation 4, 223–242 (1991)CrossRefGoogle Scholar
  12. 12.
    Gamma, E., Helm, R., Johnson, R., Vlissides, J.: Design Patterns. Addison-Wesley, Reading (1994)Google Scholar
  13. 13.
    Bracha, G., Lindstrom, G.: Modularity meets inheritance. In: Proceedings of IEEE Computer Society International Conference on Computer languages (1992)Google Scholar
  14. 14.
    Green, T., Borning, A., O’Shea, T., Minoughan, M., Smith, R.: The Stripetalk Papers: Understandability as a Language Design Issue in Object-Oriented Programming Systems. In: Noble, J., Taivalsaari, A., Moore, I. (eds.) Prototype-based Programming: Concepts, Languages and Applications (1998)Google Scholar
  15. 15.
    Blashek, G.: Object-Oriented Programming with Prototypes. Springer, Heidelberg (1994)Google Scholar
  16. 16.
    Smith, R., Ungar, D.: Programming as an Experience: The inspiration for Self. In: Noble, J., Taivalsaari, A., Moore, I. (eds.) Prototype-based Programming: Concepts, Languages and Applications (1998)Google Scholar
  17. 17.
    Pico Home Page: http://pico.vub.ac.be/
  18. 18.
    Abelson, H., Sussman, G.J.S.: Structure and Interpretation of Computer Programs, 2nd edn. MIT Press, Cambridge (1996)MATHGoogle Scholar
  19. 19.
    Steyaert, P., De Meuter, W.: A marriage of class-and object-based inheritance without unwanted children. In: Olthoff, W. (ed.) ECOOP 1995. LNCS, vol. 952, pp. 127–144. Springer, Heidelberg (1995)Google Scholar
  20. 20.
    D’Hondt, T., De Meuter, W.: Of first-class methods and dynamic scope. In: Proceedings of LMO, France (2003) (to appear)Google Scholar

Copyright information

© Springer-Verlag Berlin Heidelberg 2004

Authors and Affiliations

  • Wolfgang De Meuter
    • 1
  • Theo D’Hondt
    • 1
  • Jessie Dedecker
    • 1
  1. 1.Programming Technology LabVrije Universiteit BrusselBrusselsBelgium

Personalised recommendations