compileLam :: Var -> Expr Var -> Compile Expression
compileLam var exp = do
  v <- compileVar var
  e <- compileExp exp
  return (lambda [v] (thunk e))
compileLam :: Var -> Expr Var -> Compile Expression
compileLam var exp = do
  v <- compileVar var
  e <- compileExp exp
  return (lambda [v] (thunk e))
compileLam var exp = do
  v <- compileVar var
  e <- compileExp exp
  return (lambda [v] (thunk e))