first draft of evalExpression