Cat is a C++ functional library inspired by category theory and Haskell language.
The purpose of Cat is to provide utility functions and type classes to enable the functional programming paradigm in C++.
The source code is available at: https://github.com/cat/cat.
More information on type classes can be found at the following address: typeclassopedia.