compileBind :: Bind Var -> Compile [Statement]
compileBind bind =
  case bind of
    NonRec var exp -> fmap return (compileGeneralBind var exp)
    Rec defs -> mapM (uncurry compileGeneralBind) defs
compileBind :: Bind Var -> Compile [Statement]
compileBind bind =
  case bind of
    NonRec var exp -> fmap return (compileGeneralBind var exp)
    Rec defs -> mapM (uncurry compileGeneralBind) defs
compileBind bind =
  case bind of
    NonRec var exp -> fmap return (compileGeneralBind var exp)
    Rec defs -> mapM (uncurry compileGeneralBind) defs