#lang plait
[(Num n) expr] ; <- change here
@$\vdots$@
[(Let1 bound-id named-expr bound-body)
(interp (subst bound-body bound-id
(interp named-expr)))] ; <- no `(Num ...)'
[(Lam bound-id bound-body) expr] ;cf. Num
[(Call lam arg-expr)
(type-case FLANG lam
[(Lam bound-id bound-body) ;cf. Let1
(interp (subst bound-body bound-id
(interp arg-expr)))]
[else (error 'eval "non-function")])]))