Může mi někdo vysvětlit následující citát od Knutha, pls? "At an abstract enough level of implementation, generic OOP and functional approaches to programming are one and the same thing. [...] Let's take any language, say, C++. There's a natural transformation from, for instance, Optional<T> to Set<T> and so we can, by and large, work with quotients of types and ignore their actual shape and structure, which provides a great pathway to automatic optimisation and semantic verification [...] We also obtain an almost optimal type system, devising which would be close to impossible otherwise. [...] so what we arrive at in the end is a bijection between a subset of C++ and a purely functional language."
Nechápu, co je "natural transformation" a jak by měla vypadat. Celé mi to vůbec přijde dost divně napsané. Jde to říct i jinak nebo to je fakt tak složité?