First Class Relationships In An Object Oriented Language

File (PDF)

First Class Relationships In An Object Oriented Language.pdf


  • Provide language level constructs to declare relationships
  • relations with attributes & inheritance
  • although there are patterns for implementing relations the relation itself gets lost in the implementation
  • Diferent aspects of the relation are distributed across various classes
  • Important abstractions such as relations must be available at implementation level
  • RelJ is a subset of Java
    • can define relations
    • specify attributes
    • create hierarchies
  • Relationship instances are first-class runtime objects in RelJ that can contain fields and even methods
  • only support relations that are one way. We hope to add relationships that may be travered in both directions safely.
  • doesn't give any details of how RelJ could be implemented. Requires considerable extensions to JVM.
  • It's possible to have relationships between classes and other relationships. (aggregation in E/R modeling)




Bibliographic Description

    author = {Gavin Bierman},
    title = {First-class relationships in an object-oriented language},
    booktitle = {In ECOOP},
    year = {2005},
    pages = {262--286},
    publisher = {Springer-Verlag}
Unless otherwise stated, the content of this page is licensed under Creative Commons Attribution-ShareAlike 3.0 License