Skip to main content

Reuse Variables: Reusing Code and State in Timor

  • Conference paper
Book cover Software Reuse: Methods, Techniques, and Tools (ICSR 2004)

Part of the book series: Lecture Notes in Computer Science ((LNCS,volume 3107))

Included in the following conference series:

Abstract

The standard approach to code reuse in object oriented languages is via inheritance. This is restrictive in a number of ways. For example, it leads to well known conflicts between subtyping and subclassing. Furthermore, where no type relationship exists, programmers must resort to inefficient techniques such as delegation to achieve code reuse. In the paper it is described how the language Timor decouples subtyping and code reuse and presents a new concept known as reuse variables, showing how these can be used to eliminate such restrictions in object oriented and component oriented contexts.

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 39.99
Price excludes VAT (USA)
  • Available as PDF
  • Read on any device
  • Instant download
  • Own it forever
Softcover Book
USD 54.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. Bruce, K.B., Cardelli, L., Castagna, G.: The Hopkins Object Group. In: Leavens, G.T., Pierce, B. (eds.) On Binary Methods.Theory and Practice of Object Systems, vol. 1(3), pp. 221–242 (1995)

    Google Scholar 

  2. Chambers, C.: The Cecil Language: Specification & Rationale, Version 2.1 (1997), see, http://www.cs.washington.edu/research/projects/cecil/www/pubs/index.htm

  3. Cook, W., Hill, W., Canning, P.: Inheritance is Not Subtyping. In: 17th ACM Symposium on Principles of Programming Languages, pp. 125–135 (1990)

    Google Scholar 

  4. Gamma, E., et al.: Design Patterns: Elements of Reusable Object-Oriented Software. Addison-Wesley, Reading (1995)

    Google Scholar 

  5. Keedy, J.L., Menger, G., Heinlein, C.: Support for Subtyping and Code Re-use in Timor. In: 40th International Conference on Technology of Object-Oriented Languages and Systems (TOOLS Pacific 2002), Sydney, Australia. Conferences in Research and Practice in Information Technology, vol. 10, pp. 35–43 (2002)

    Google Scholar 

  6. Keedy, J.L., Menger, G., Heinlein, C.: Inheriting from a Common Abstract Ancestor in Timor. Journal of Object Technology (www.jot.fm) 1(1), 81–106 (2002)

    Article  Google Scholar 

  7. Keedy, J.L., Menger, G., Heinlein, C.: Inheriting Multiple and Repeated Parts in Timor. Journal of Object Technology (www.jot.fm) 3(6) (2004), http://www.jot.fm (to appear)

  8. Liskov, B., Curtis, D., Day, M., Ghemawat, S., Gruber, R., Johnson, P., Myers, A.C.: Theta Reference Manual, MIT Laboratory for Computer Science, Cambridge, MA, Programming Methodology Group Memo 88 (February 1994)

    Google Scholar 

  9. Liskov, B., Wing, J.M.: A Behavioral Notion of Subtyping. ACM Transactions on Programming Languages and Systems 16(6), 1811–1841 (1994)

    Article  Google Scholar 

  10. Parnas, D.L.: On the Criteria To Be Used in Decomposing Systems into Modules. Communications of the ACM 15(12), 1053–1058 (1972)

    Article  Google Scholar 

  11. Schmolitzky: Ein Modell zur Trennung von Vererbung und Typabstraktion in objektorientierten Sprachen (A Model for Separating Inheritance and Type Abstraction in Object Oriented Languages), Ph.D. Thesis, Dept. of Computer Structures: University of Ulm, Germany (1999)

    Google Scholar 

  12. Ungar, D., Smith, R.B.: Self: The Power of Simplicity. In: OOPSLA 1987, Orlando, Florida. ACM SIGPLAN Notices, vol. 22, pp. 227–241 (1987)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2004 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Keedy, J.L., Heinlein, C., Menger, G. (2004). Reuse Variables: Reusing Code and State in Timor. In: Bosch, J., Krueger, C. (eds) Software Reuse: Methods, Techniques, and Tools. ICSR 2004. Lecture Notes in Computer Science, vol 3107. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-540-27799-6_17

Download citation

  • DOI: https://doi.org/10.1007/978-3-540-27799-6_17

  • Publisher Name: Springer, Berlin, Heidelberg

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

  • Online ISBN: 978-3-540-27799-6

  • eBook Packages: Springer Book Archive

Publish with us

Policies and ethics