Scala Design Patterns Patterns for Practical Reuse and Design - Hunt, John (Springer International Publishing : Imprint: Springer, 2013)