1. What This Book Is About
It is impossible to know things of this worldunless you know mathematics.
Roger Bacon, Opus Majus
This book is about programming, but it is different from most programming books. Along with algorithms and code, you’ll find mathematical proofs and historical notes about mathematical discoveries from ancient times to the 20th century.
More specifically, the book is about generic programming, an approach to programming that was introduced in the 1980s and started to become popular following the creation of the C++ Standard Template Library (STL) in the 1990s. We might define it like this:
Definition 1.1. Generic programming is an approach to programming that focuses on designing algorithms and data structures so that they ...