Trait (computer programming)

This is an old revision of this page, as edited by JLaTondre (talk | contribs) at 13:14, 24 September 2006 (fix incorrect link to stone using AWB). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Traits are a type of abstract type, used as a "simple conceptual model for structuring object oriented programs."[1]. Traits are similar to mixins, but may include definitions for class methods. Traits were proposed for inclusion in Smalltalk, and are found in Perl 6 and Scala. And "module mixins" in Ruby is like traits in some degree.