Summary
In this chapter, we talked about the notations and terminology used in category theory. We also discussed several algebraic types from category theory. Each of these abstractions have laws that must be satisfied by their implementations, and these laws can be thought of as optimizations for computations that use these algebraic types.
In the next chapter, we will look at a different paradigm of programming altogether—logic programming.