compileNonRecLet :: Var -> Expr Var -> Expr Var -> Compile Expression
compileNonRecLet var exp body = do
  v <- compileVar var
  e <- compileExp exp
  b <- compileExp body
  return (Apply (Function [v] b)
                [e])
compileNonRecLet :: Var -> Expr Var -> Expr Var -> Compile Expression
compileNonRecLet var exp body = do
  v <- compileVar var
  e <- compileExp exp
  b <- compileExp body
  return (Apply (Function [v] b)
                [e])
compileNonRecLet var exp body = do
  v <- compileVar var
  e <- compileExp exp
  b <- compileExp body
  return (Apply (Function [v] b)
                [e])