[code cleanups
John Meacham <john@repetae.net>**20080313003743] hunk ./E/Rules.hs 11
-    getARules,
-    mapRules,
hunk ./E/Rules.hs 14
-    mapABodiesArgs,
-    ruleHeadFreeVars,
hunk ./E/Rules.hs 15
-    mapRuleBodies,
hunk ./E/Rules.hs 16
-    ruleAllFreeVars,
-    findOrphanRules,
hunk ./E/Rules.hs 81
-mapRuleBodies :: (E -> E) -> Rules -> Rules
-mapRuleBodies g (Rules mp) = Rules (fmap (map f) mp) where
-    f rule = rule { ruleBody = g $ ruleBody rule }
-
hunk ./E/Rules.hs 92
-ruleAllFreeVars :: Rules -> IdSet
-ruleAllFreeVars (Rules r) = freeVars (melems r)
-
-
-ruleHeadFreeVars :: Rules -> IdSet
-ruleHeadFreeVars (Rules rs) = unions $ map f (concat $ melems rs) where
-    f r = (S.insert (tvrIdent $ ruleHead r) $ freeVars (ruleArgs r)) S.\\ fromList (map tvrIdent $ ruleBinds r)
-
-findOrphanRules :: [Module] -> Rules -> Rules
-findOrphanRules ms (Rules rs) = Rules $ mapMaybeIdMap f rs where
-    f rs = let grs = filter (not . bad) rs in if List.null grs then Nothing else Just grs
-    bad r = List.null $ map Just ms `intersect` (map (\x -> getModule =<< fromId x) $ idSetToList ((S.insert (tvrIdent $ ruleHead r) $ freeVars (ruleArgs r)) S.\\ fromList (map tvrIdent $ ruleBinds r)))
-
hunk ./E/Rules.hs 123
-getARules :: Monad m => Rules -> Id -> m ARules
-getARules (Rules mp) tvr = liftM arules (mlookup tvr mp)
-
-mapABodies :: Monad m => (E -> m E) -> ARules -> m ARules
-mapABodies g ARules { aruleRules = rs } = do
-    let f rule = do
-            b <- g (ruleBody rule)
-            return rule { ruleBody = b }
-    rs' <- mapM f rs
-    return $ arules $ rs'
hunk ./E/Rules.hs 132
-mapABodiesArgs :: Monad m => (E -> m E) -> ARules -> m ARules
-mapABodiesArgs g ARules { aruleRules = rs } = do
-    let f rule = do
-            b <- g (ruleBody rule)
-            as <- mapM g (ruleArgs rule)
-            return rule { ruleArgs = as, ruleBody = b }
-    rs' <- mapM f rs
-    return $ arules $ rs'
hunk ./E/Rules.hs 136
-mapRules :: Monad m => (Rule -> m Rule) -> ARules -> m ARules
-mapRules f ARules { aruleRules = rules } = do
-    rs <- mapM f rules
-    return $ arules rs