Surround the evaluation function with a class. This way we can easily implement 1) An evaluation hash table that isn't separate from the evaluation function itself, and 2) Implement evaluation term tracing using a templated version of the Evaluate class.
Additionally, the evaluation has been made way more readable.
Surround the evaluation function with a class. This way we can easily implement 1) An evaluation hash table that isn't separate from the evaluation function itself, and 2) Implement evaluation term tracing using a templated version of the Evaluate class. Additionally, the evaluation has been made way more readable.