DONE: refactor Expression to be Entry*