;; For each step: ;; - interp or continue? ;; - after, did we lose anything? the same result? (interp (parse '{{lambda {x} {+ x 2}} 8}) mt-env (doneK)) ;; appE (interp {lambda {x} {+ x 2}} mt-env (appArgK `8 mt-env (doneK))) (continue (appArgK `8 mt-env (doneK)) v1 = (closV 'x (plusE (idE 'x) (numE 2)) mt-env)) (interp `8 mt-env (doAppK v1 (doneK))) (continue (doAppK v1 (doneK)) (numV 8)) (interp (plusE (idE 'x) (numE 2)) e1 = (extend-env (bind 'x (numV 8)) mt-env) (doneK)) (interp 'x (e1) k2 = (plusSecondK (numE 2) (e1) (doneK))) (continue (k2) (numV 8)) (interp (numE 2) (e1) k3 = (doPlusK (numV 8) (doneK))) (continue (k3) (numV 2)) (continue (doneK) (numV 10))