Programming in Scala [a comprehensive step-by-step guide] - Odersky, Martin 1958-; Spoon, Lex; Venners, Bill