From understanding the basic need of types to understanding what a type-class is, we've gone through it all. Along the way, we discussed parametric polymorphism using parametric types and abstract types. With the concept of variance, as well as bounds, we've gone through it all and now it's a bit clearer. For more insights, practice is a must. We can think of scenarios to learn about the concepts. We tried to go through the concepts as they were and look at a few examples, but it'll definitely be fun if you try out some of these on your own. This chapter was the formation or the basis of real Scala programming. Concepts such as type-classes come in very handy when writing effective programs.
In the next chapter, we'll go through concepts such as implicits and the ways we can do exception handling in Scala. And of course, we'll play with type...