Multiple dispatch – the selection of a function to be invoked based on the dynamic type of two or more arguments – is a solution to several classical problems in object-oriented programming. Open multi-methods generalize multiple dispatch towards open-class extensions, more...
“Write a Named Point class with three members: two floating point values for the coordinates on an X-Y plane, and a name represented as a 'char *'.” -- what could go wrong?
"Take the names of two U.S. States, mix them all together, then rearrange the letters to form the names of two other U.S. States. What states are these?"
Though I was not the world's leading C++ expert, I was a sophisticated and knowledgeable C++ user. So what happened? Basically I got sick of every single aspect of C++ being designed around higher performance instead of my productivity.