Evaluating those expressions is all that remains. Some refactoring of the operator functions might be useful.