Assignment 1
Part I: Eva: Eager By-Value Algebraic Evaluator for an Extended Lambda Calculus
Task: understand the syntax and semantics of the language LCA described in A1.eva-test.rkt, then create a good test suite (to complement the given 8 test cases) for an evaluator of LCA named eva in A1.eva-test.rkt which you will then implement in A1.eva.rkt
Part II: Eve: Eager By-Value Environmental Evaluator for an Extended Lambda Calculus
Task: understand the syntax and semantics of the language LCE described in A1.eve-test.rkt, then create a good test suite (to complement the given 4 test cases) for an evaluator eve of LCE which you will then implement in A1.eve.rkt
Part III: Evo: Eager By-Value Stateful Evaluator for an Extended Lambda Calculus
Task: understand the syntax and semantics of the language LCO described in A1.evo-test.rkt, then create a good test suite for an evaluator of LCO named evo in A1.evo-test.rkt which you will then implement in A1.evo.rkt.