Interested parties should read: http://citeseerx.ist.psu.edu/viewdoc/summary?doi=10.1.1.96.5386 

It's a short paper showing a true OO solution to the expression problem using virtual classes and is written in easily understandable terms.