This article is about OOP hierarchies, in comparisson with type classes, using as example Scala’s standard collections, which are involved in a recent debate around their redesign. 1. Background Scala is a hybrid language, being at the same time its greatest strength and weakness. The collection-strawman represents a redesign of Scala’s standard collections, planned to be shipped in Scala 2.13, as
![In Defense of OOFP](https://cdn-ak-scissors.b.st-hatena.com/image/square/901ef123c2ba4aea45985117fa56e1acf16e3dc3/height=288;version=1;width=512/https%3A%2F%2Falexn.org%2Fassets%2Fmedia%2Farticles%2Fscala-stairs.jpg%3F202406010758)