Explores subtyping, generics, and variance in Scala, emphasizing the importance of precise type descriptions and demonstrating practical applications of for expressions.
Covers polymorphism in object-oriented programming, focusing on inclusion polymorphism and its implementation through class hierarchies and virtual methods.