TidyPgm: replace an explicit loop with mapAccumL
authorÖmer Sinan Ağacan <omeragacan@gmail.com>
Fri, 1 Nov 2019 08:21:49 +0000 (11:21 +0300)
committerMarge Bot <ben+marge-bot@smart-cactus.org>
Tue, 5 Nov 2019 16:39:13 +0000 (11:39 -0500)
compiler/main/TidyPgm.hs

index f0dbc67..ae491ac 100644 (file)
@@ -63,7 +63,7 @@ import qualified ErrUtils as Err
 
 import Control.Monad
 import Data.Function
-import Data.List        ( sortBy )
+import Data.List        ( sortBy, mapAccumL )
 import Data.IORef       ( atomicModifyIORef' )
 
 {-
@@ -1089,12 +1089,7 @@ tidyTopBinds hsc_env this_mod unfold_env init_occ_env binds
 
     init_env = (init_occ_env, emptyVarEnv)
 
-    tidy _           env []     = (env, [])
-    tidy cvt_literal env (b:bs)
-        = let (env1, b')  = tidyTopBind dflags this_mod cvt_literal unfold_env
-                                        env b
-              (env2, bs') = tidy cvt_literal env1 bs
-          in  (env2, b':bs')
+    tidy cvt_literal = mapAccumL (tidyTopBind dflags this_mod cvt_literal unfold_env)
 
 ------------------------
 tidyTopBind  :: DynFlags