skip to main content
article

Interaction-based programming with classages

Published:12 October 2005Publication History
Skip Abstract Section

Abstract

This paper presents Classages, a novel interaction-centric object-oriented language. Classes and objects in Classages are fully encapsulated, with explicit interfaces for all interactions they might be involved in. The design of Classages touches upon a wide range of language design topics, including encapsulation, object relationship representation, and object confinement. An encoding of Java's OO model in Classages is provided, showing how standard paradigms are supported. A prototype Classages compiler is described.

References

  1. Abadi, M., and Cardelli, L. A Theory of Objects. Springer, 1996. Google ScholarGoogle ScholarDigital LibraryDigital Library
  2. Aldrich, J., and Chambers, C. Ownership domains: Separating aliasing policy from mechanism. In Proceedings of the 18th ECOOP (2004), pp. 1--25.Google ScholarGoogle ScholarCross RefCross Ref
  3. Aldrich, J., Kostadinov, V., and Chambers, C. Alias annotations for program understanding. In OOPSLA '02, pp. 311--330. Google ScholarGoogle ScholarDigital LibraryDigital Library
  4. Aldrich, J., Sazawal, V., Chambers, C., and Notkin, D. Language support for connector abstractions. In Proceedings of the 17th ECOOP (2003), pp. 74--102.Google ScholarGoogle ScholarCross RefCross Ref
  5. Allen, R., and Garlan, D. A formal basis for architectural connection. ACM Transactions on Software Engineering and Methodology 6, 3 (1997), 213--249. Google ScholarGoogle ScholarDigital LibraryDigital Library
  6. Bierman, G., and Wren, A. First-class relationships in an object-oriented language. In FOOL '05: Proceedings of the 12th International Workshop on Foundations of Object-oriented Languages.Google ScholarGoogle Scholar
  7. Black, A. P., Schärli, N., and Ducasse, S. Applying traits to the smalltalk collection classes. In OOPSLA '03, pp. 47--64. Google ScholarGoogle ScholarDigital LibraryDigital Library
  8. Boyapati, C., Liskov, B., and Shrira, L. Ownership types for object encapsulation. In POPL'03, pp. 213--223. Google ScholarGoogle ScholarDigital LibraryDigital Library
  9. Bracha, G., and Cook, W. Mixin-based inheritance. In Proceedings of OOPSLA/ECOOP'90 (1990), pp. 303--311. Google ScholarGoogle ScholarDigital LibraryDigital Library
  10. Clarke, D. Object Ownership and Containment. PhD thesis, University of New South Wales, July 2001. Google ScholarGoogle ScholarDigital LibraryDigital Library
  11. Clarke, D., and Wrigstad, T. External uniqueness is unique enough. In Proceedings of the 17th ECOOP (2003), pp. 176--200.Google ScholarGoogle ScholarCross RefCross Ref
  12. Cobbe, R., and Felleisen, M. Environmental acquisition revisited. In POPL'05, pp. 14--25. Google ScholarGoogle ScholarDigital LibraryDigital Library
  13. Ducasse, S., Blay-Fornarino, M., and Pinna, A.-M. A reflective model for first class dependencies. In OOPSLA'95, pp. 265--280. Google ScholarGoogle ScholarDigital LibraryDigital Library
  14. Flatt, M., and Felleisen, M. Units: Cool modules for HOT languages. In PLDI'98, pp. 236--248. Google ScholarGoogle ScholarDigital LibraryDigital Library
  15. Flatt, M., Krishnamurthi, S., and Felleisen, M. Classes and mixins. In POPL'98, pp. 171--183. Google ScholarGoogle ScholarDigital LibraryDigital Library
  16. Gamma, E., Helm, R., Johnson, R., and Vlissides, J. Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, 1995. Google ScholarGoogle ScholarDigital LibraryDigital Library
  17. Guéhéneuc, Y.-G., and Albin-Amiot, H. Recovering binary class relationships: Putting icing on the uml cake. In OOPSLA'04, pp. 301--314. Google ScholarGoogle ScholarDigital LibraryDigital Library
  18. Kristensen, B. Complex Associations: Abstractions in Object-Oriented Modeling. In OOPSLA'94, pp. 272--283. Google ScholarGoogle ScholarDigital LibraryDigital Library
  19. Liu, Y. D., and Smith, S. F. Modules with interfaces for dynamic linking and communication. In Proceedings of the 18th ECOOP (2004), pp. 414--439.Google ScholarGoogle ScholarCross RefCross Ref
  20. Madsen, O. L., Moller-Pedersen, B., and Nygaard, K. Object-oriented programming in the BETA programming language. ACM Press/Addison-Wesley Publishing Co., 1993. Google ScholarGoogle ScholarDigital LibraryDigital Library
  21. Medvidovic, N., Rosenblum, D. S., and Taylor, R. N. A language and environment for architecture-based software development and evolution. In Proceedings of the 1999 International Conference on Software Engineering, pp. 44--53. Google ScholarGoogle ScholarDigital LibraryDigital Library
  22. Nystrom, N., Clarkson, M. R., and Myers, A. C. Polyglot: An extensible compiler framework for java. In Proceedings of the 12th International Conference on Compiler Construction (2003), pp. 138--152. Google ScholarGoogle ScholarDigital LibraryDigital Library
  23. Object Management Group. The Object Management Group. URL: http://www.omg.org.Google ScholarGoogle Scholar
  24. Rinat, R., and Smith, S. F. Modular internet programming with cells. In Proceedings of the 16th ECOOP (2002), pp. 257--280. Google ScholarGoogle ScholarDigital LibraryDigital Library
  25. Rumbaugh, J. Relations as semantic constructs in an object-oriented language. In OOPSLA'87, pp. 466--481. Google ScholarGoogle ScholarDigital LibraryDigital Library
  26. Schärli, N., Black, A. P., and Ducasse, S. Object-oriented encapsulation for dynamically typed languages. In OOPSLA'04, pp. 130--149. Google ScholarGoogle ScholarDigital LibraryDigital Library
  27. Schärli, N., Ducasse, S., Nierstrasz, O., and Black, A. P. Traits: Composable units of behaviour. In Proceedings of the 17th ECOOP (2003), pp. 248--274.Google ScholarGoogle ScholarCross RefCross Ref
  28. Schärli, N., Ducasse, S., Nierstrasz, O., and Wuyts, R. Composable encapsulation policies. In Proceedings of the 18th ECOOP (2004), pp. 26--50.Google ScholarGoogle ScholarCross RefCross Ref
  29. Srinivasan, R., and Rose, G. Linus: A hierarchic procedure to predict the fold of a protein. PROTEINS: Structure, Function, and Genetics 22 (1995), 81--99.Google ScholarGoogle Scholar
  30. Steyaert, P., Lucas, C., Mens, K., and D'Hondt, T. Reuse contracts: managing the evolution of reusable assets. In OOPSLA'96, pp. 268--285. Google ScholarGoogle ScholarDigital LibraryDigital Library
  31. Tofte, M., and Talpin, J.-P. Region-based memory management. Information and Computation 132, 2 (1997), 109--176. Google ScholarGoogle ScholarDigital LibraryDigital Library

Index Terms

  1. Interaction-based programming with classages

    Recommendations

    Comments

    Login options

    Check if you have access through your login credentials or your institution to get full access on this article.

    Sign in

    Full Access

    • Published in

      cover image ACM SIGPLAN Notices
      ACM SIGPLAN Notices  Volume 40, Issue 10
      Proceedings of the 20th annual ACM SIGPLAN conference on Object oriented programming systems languages and applications
      October 2005
      531 pages
      ISSN:0362-1340
      EISSN:1558-1160
      DOI:10.1145/1103845
      Issue’s Table of Contents
      • cover image ACM Conferences
        OOPSLA '05: Proceedings of the 20th annual ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications
        October 2005
        562 pages
        ISBN:1595930310
        DOI:10.1145/1094811

      Copyright © 2005 ACM

      Permission to make digital or hard copies of all or part of this work for personal or classroom use is granted without fee provided that copies are not made or distributed for profit or commercial advantage and that copies bear this notice and the full citation on the first page. Copyrights for components of this work owned by others than ACM must be honored. Abstracting with credit is permitted. To copy otherwise, or republish, to post on servers or to redistribute to lists, requires prior specific permission and/or a fee. Request permissions from [email protected]

      Publisher

      Association for Computing Machinery

      New York, NY, United States

      Publication History

      • Published: 12 October 2005

      Check for updates

      Qualifiers

      • article

    PDF Format

    View or Download as a PDF file.

    PDF

    eReader

    View online with eReader.

    eReader