Skip to main content

Putting Traits in Perspective

  • Conference paper
Book cover Software Composition (SC 2009)

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

Included in the following conference series:

Abstract

Traits have been proposed as a mechanism to compose and share behavioral units between distinct class hierarchies. Several versions have been developed and they have been used to build complex libraries. This keynote puts in perspective the current versions and stress their relationships and limits.

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. Schärli, N., Ducasse, S., Nierstrasz, O., Black, A.: Traits: Composable units of behavior. In: Cardelli, L. (ed.) ECOOP 2003. LNCS, vol. 2743, pp. 248–274. Springer, Heidelberg (2003)

    Chapter  Google Scholar 

  2. Lienhard, A.: Bootstrapping Traits. Master’s thesis, University of Bern (2004)

    Google Scholar 

  3. Schärli, N.: Traits — Composing Classes from Behavioral Building Blocks. PhD thesis, University of Bern (2005)

    Google Scholar 

  4. Slate, http://slate.tunes.org

  5. Ingalls, D., Kaehler, T., Maloney, J., Wallace, S., Kay, A.: Back to the future: The story of Squeak, a practical Smalltalk written in itself. In: Proceedings of the 12th ACM SIGPLAN conference on Object-oriented programming, systems, languages, and applications (OOPSLA 1997), pp. 318–326. ACM Press, New York (1997)

    Chapter  Google Scholar 

  6. Flatt, M., Finder, R.B., Felleisen, M.: Scheme with classes, mixins and traits. In: AAPLAS 2006 (2006)

    Google Scholar 

  7. The Fortress language specification, http://research.sun.com/projects/plrg/

  8. Fisher, K., Reppy, J.: Statically typed traits. Technical Report TR-2003-13, University of Chicago, Department of Computer Science (2003)

    Google Scholar 

  9. Smith, C., Drossopoulou, S.: Chai: Typed traits in Java. In: Black, A.P. (ed.) ECOOP 2005. LNCS, vol. 3586, pp. 453–478. Springer, Heidelberg (2005)

    Chapter  Google Scholar 

  10. Liquori, L., Spiwack, A.: FeatherTrait: A modest extension of Featherweight Java. ACM Transactions on Programming Languages and Systems (TOPLAS) 30, 1–32 (2008)

    Article  MATH  Google Scholar 

  11. Reppy, J., Turon, A.: Metaprogramming with traits. In: Ernst, E. (ed.) ECOOP 2007. LNCS, vol. 4609, pp. 373–398. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  12. Bono, V., Damiani, F., Giachino, E.: On traits and types in a java-like setting. In: Fifth IFIP International Conference On Theoretical Computer Science - TCS 2008. IFIP International Federation for Information Processing, pp. 367–382. Springer, Heidelberg (2008)

    Google Scholar 

  13. Black, A.P., Schärli, N., Ducasse, S.: Applying traits to the Smalltalk collection hierarchy. Technical Report IAM-02-007, Institut für Informatik, Universität Bern, Switzerland, Also available as Technical Report CSE-02-014, OGI School of Science & Engineering, Beaverton, Oregon, USA (2002)

    Google Scholar 

  14. Cassou, D., Ducasse, S., Wuyts, R.: Redesigning with traits: the nile stream trait-based library. In: Proceedings of the 2007 International Conference on Dynamic Languages (ICDL 2007), pp. 50–75. ACM Digital Library, New York (2007)

    Google Scholar 

  15. Cassou, D., Ducasse, S., Wuyts, R.: Traits at work: the design of a new trait-based stream library. Journal of Computer Languages, Systems and Structures 35, 2–20 (2009)

    Article  Google Scholar 

  16. Ducasse, S., Schärli, N., Wuyts, R.: Uniform and safe metaclass composition. Journal of Computer Languages, Systems and Structures 31, 143–164 (2005)

    Article  MATH  Google Scholar 

  17. Black, A.P., Schärli, N.: Traits: Tools and methodology. In: Proceedings ICSE 2004, pp. 676–686 (2004)

    Google Scholar 

  18. Lienhard, A., Ducasse, S., Arévalo, G.: Identifying traits with formal concept analysis. In: Proceedings of 20th Conference on Automated Software Engineering (ASE 2005), pp. 66–75. IEEE Computer Society, Los Alamitos (2005)

    Google Scholar 

  19. Bettini, L., Bono, V., Naddeo, M.: A trait based re-engineering technique for java hierarchies. In: PPPJ 2008. ACM International Conference Proceedings. ACM Press, New York (2008)

    Google Scholar 

  20. Schärli, N., Black, A.P.: A browser for incremental programming. Journal of Computer Languages, Systems and Structures 30, 79–95 (2004)

    Article  MATH  Google Scholar 

  21. Ducasse, S., Pollet, D., Bergel, A., Cassou, D.: Reusing and composing tests with traits. In: Proceedings of the 47th International Conference Objects, Models, Components, Patterns (TOOLS-Europe 2009) (2009)

    Google Scholar 

  22. Bergel, A., Ducasse, S., Nierstrasz, O., Wuyts, R.: Stateful traits. In: De Meuter, W. (ed.) ISC 2006. LNCS, vol. 4406, pp. 66–90. Springer, Heidelberg (2007)

    Chapter  Google Scholar 

  23. Bergel, A., Ducasse, S., Nierstrasz, O., Wuyts, R.: Stateful traits and their formalization. Journal of Computer Languages, Systems and Structures 34, 83–108 (2008)

    Article  Google Scholar 

  24. Ducasse, S., Wuyts, R., Bergel, A., Nierstrasz, O.: User-changeable visibility: Resolving unanticipated name clashes in traits. In: Proceedings of 22nd International Conference on Object-Oriented Programming, Systems, Languages, and Applications (OOPSLA 2007), pp. 171–190. ACM Press, New York (2007)

    Google Scholar 

  25. van Cutsem, T., Bergel, A., Ducasse, S., Meuter, W.D.: Adding state and visibility control to traits using lexical nesting. In: Drossopoulou, S. (ed.) ECOOP 2009. LNCS. Springer, Heidelberg (2009)

    Google Scholar 

Download references

Author information

Authors and Affiliations

Authors

Editor information

Editors and Affiliations

Rights and permissions

Reprints and permissions

Copyright information

© 2009 Springer-Verlag Berlin Heidelberg

About this paper

Cite this paper

Ducasse, S. (2009). Putting Traits in Perspective. In: Bergel, A., Fabry, J. (eds) Software Composition. SC 2009. Lecture Notes in Computer Science, vol 5634. Springer, Berlin, Heidelberg. https://doi.org/10.1007/978-3-642-02655-3_2

Download citation

  • DOI: https://doi.org/10.1007/978-3-642-02655-3_2

  • Publisher Name: Springer, Berlin, Heidelberg

  • Print ISBN: 978-3-642-02654-6

  • Online ISBN: 978-3-642-02655-3

  • eBook Packages: Computer ScienceComputer Science (R0)

Publish with us

Policies and ethics