UNB/ CS/ David Bremner/ teaching/ cs4613/ lectures/ lecture6/ snippet-033.rkt
#lang plait
[(Call lam arg-expr)
      (let [(funV (interp lam))]
        (type-case FLANG funV
          [(Lam bound-id bound-body)
               ; just like `let1'
               (interp (subst bound-body
                            bound-id
                            (interp arg-expr)))]
          [else (error 'eval "expected function")]))]))