Exercise 2.11
ちょっとだけ。lambda-calculus-subst 手続きですが例えば var-exp の部分が以下になってて
(var-exp (id) (if (eqv? id subst-id) subst-exp exp)
subst-exp に単純に置きかえるのではなくて
(if (occurs-free? id exp) subst-exp (fresh-id exp id))
みたいにすれば良いのかな。実装は別途で。
ちょっとだけ。lambda-calculus-subst 手続きですが例えば var-exp の部分が以下になってて
(var-exp (id) (if (eqv? id subst-id) subst-exp exp)
subst-exp に単純に置きかえるのではなくて
(if (occurs-free? id exp) subst-exp (fresh-id exp id))
みたいにすれば良いのかな。実装は別途で。