I hope everyone enjoyed the protocol-oriented programming chapter, and I hope you have your playground ready. This chapter is going to cover Swift generics and we are only going to scratch the surface. In the first section, we will discuss the basics of Swift generics. This will include the functional paradigms in Swift with generics. We will then end the section with a discussion of generic type constraints.