Introduction to programming and problem-solving using Scala - Lewis, Mark C and Lacher, Lisa, L.