Skip to main content

First-Class Relationships in an Object-Oriented Language

  • Conference paper
Book cover ECOOP 2005 - Object-Oriented Programming (ECOOP 2005)

Part of the book series: Lecture Notes in Computer Science ((LNPSE,volume 3586))

Included in the following conference series:

Abstract

In this paper we investigate the addition of first-class relationships to a prototypical object-oriented programming language (a “middleweight” fragment of Java). We provide language-level constructs to declare relationships between classes and to manipulate relationship instances. We allow relationships to have attributes and provide a novel notion of relationship inheritance. We formalize our language giving both the type system and operational semantics and prove certain key safety properties.

This is a preview of subscription content, log in via an institution to check access.

Access this chapter

Chapter
USD 29.95
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
eBook
USD 84.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 109.99
Price excludes VAT (USA)
  • Compact, lightweight edition
  • Dispatched in 3 to 5 business days
  • Free shipping worldwide - see info

Tax calculation will be finalised at checkout

Purchases are for personal use only

Institutional subscriptions

Preview

Unable to display preview. Download preview PDF.

Unable to display preview. Download preview PDF.

References

  1. Albano, A., Ghelli, G., Orsini, R.: A relationship mechanism for a strongly typed object-oriented database programming language. In: Proceedings of VLDB (1991)

    Google Scholar 

  2. Anderson, C., Drossopoulou, S.: δ: An imperative object-based calculus with delegation. In: Proceedings of USE (2002)

    Google Scholar 

  3. Bierman, G., Meijer, E., Schulte, W.: The essence of Cω. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 287–311. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  4. Bierman, G., Parkinson, M., Pitts, A.: MJ: A core imperative calculus for Java and Java with effects. Technical Report 563, University of Cambridge Computer Laboratory (2003)

    Google Scholar 

  5. Chen, P.P.-S.: The entity-relationship model – toward a unified view of data. ACM Transactions on Database Systems 1(1), 9–36 (1976)

    Article  Google Scholar 

  6. Drossopoulou, S.: An abstract model of Java dynamic linking and loading. In: Harper, R. (ed.) TIC 2000. LNCS, vol. 2071, p. 53. Springer, Heidelberg (2001)

    Chapter  Google Scholar 

  7. Drossopoulou, S., Valkevych, T., Eisenbach, S.: Java type soundness revisited (September 2000)

    Google Scholar 

  8. Flatt, M., Krishnamurthi, S., Felleisen, M.: Classes and mixins. In: Proceedings of POPL, pp. 171–183 (1998)

    Google Scholar 

  9. Jacobson, I., Booch, G., Rumbaugh, J.: The unified software development process. Addison-Wesley, Reading (1999)

    Google Scholar 

  10. Noble, J.: Basic relationship patterns. In: Pattern Languages of Program Design, vol. 4. Addison-Wesley, Reading (1999)

    Google Scholar 

  11. Noble, J., Grundy, J.: Explicit relationships in object-oriented development. In: Proceedings of TOOLS (1995)

    Google Scholar 

  12. Cattell, R.G.G., et al.: The Object Data Standard: ODMG 3.0. Morgan Kaufmann, San Francisco (2000)

    Google Scholar 

  13. Rumbaugh, J.: Relations as semantic constructs in an object-oriented language. In: Proceedings of OOPSLA, pp. 466–481 (1987)

    Google Scholar 

  14. Smith, J., Smith, D.: Database abstractions: Aggregation and generalizations. ACM Transactions on Database Systems 2(2), 105–133 (1977)

    Article  Google Scholar 

  15. Stevens, P., Pooley, R.: Using UML: software engineering with objects and components. Addison-Wesley, Reading (1999)

    Google Scholar 

  16. Ungar, D., Smith, R.B.: Self: The power of simplicity. In: Proceedings of OOPSLA, pp. 227–242. ACM Press, New York (1987)

    Google Scholar 

  17. Wright, A.K., Felleisen, M.: A syntactic approach to type soundness. Information and Computation 115(1), 38–94 (1994)

    Article  MATH  MathSciNet  Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2005 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Bierman, G., Wren, A. (2005). First-Class Relationships in an Object-Oriented Language. In: Black, A.P. (eds) ECOOP 2005 - Object-Oriented Programming. ECOOP 2005. Lecture Notes in Computer Science, vol 3586. Springer, Berlin, Heidelberg. https://doi.org/10.1007/11531142_12

Download citation

  • DOI: https://doi.org/10.1007/11531142_12

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-540-27992-1

  • Online ISBN: 978-3-540-31725-8

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics