Chapter 5. Scala Type System