The Inequality Taboo
bible-researcher.com6 pointsby rkts2 comments
template<typename T>
void zap (T (*f)(T x), T &x) { x = f(x); }
Example: int square (int x) { return x*x; }
int foo[5] = {1,2,3,4,5};
zap<int>(square, foo[3]); // foo is now {1,2,3,16,5}
Admittely, the <int> is a little ugly, but that can probably be fixed with Hindley-Milner (or just plain dynamic typing).
That would be an audacious claim, considering the book is rather old and only 200 pages. I recommend it because it is a model of concise and accessible prose, good for laymen (like me) who want to get the basic facts with minimal fluff. As far as I know, none of its main points has been invalidated by intervening research. But I can see why its blunt statements of fact might be unpalatable to some.