There are situations where we’d like to treat associated types on protocols as generics, but the compiler refuses. Using type-erasure, there is a way to perform this transformation. In this post, Samuel E. Giddins walks us through the process of – and the reasoning behind – turning associated types into generic constraints in Swift. Protocol-Oriented Programming is the way to go in Swift, right? I