Refactoring `eval` to use iterative evaluation.