an overview of the scala programming language .
Traits: Composable Units of Behaviour