Tap should use evaluator directly, not pass it to eval.
Experimental translation-based simulation function.