Replace a foldl by foldl'
authorIustin Pop <iustin@google.com>
Sun, 15 Feb 2009 13:35:53 +0000 (14:35 +0100)
committerIustin Pop <iustin@google.com>
Sun, 15 Feb 2009 13:35:53 +0000 (14:35 +0100)
src/Cluster.hs

index c4a83f2..b3ce190 100644 (file)
@@ -613,19 +613,19 @@ fixNodes :: [(Int, Node.Node)]
          -> [(Int, Instance.Instance)]
          -> [(Int, Node.Node)]
 fixNodes nl il =
-    foldl (\accu (idx, inst) ->
-               let
-                   assocEqual = (\ (i, _) (j, _) -> i == j)
-                   pdx = Instance.pnode inst
-                   sdx = Instance.snode inst
-                   pold = fromJust $ lookup pdx accu
-                   sold = fromJust $ lookup sdx accu
-                   pnew = Node.setPri pold idx
-                   snew = Node.setSec sold idx
-                   ac1 = deleteBy assocEqual (pdx, pold) accu
-                   ac2 = deleteBy assocEqual (sdx, sold) ac1
-                   ac3 = (pdx, pnew):(sdx, snew):ac2
-               in ac3) nl il
+    foldl' (\accu (idx, inst) ->
+                let
+                    assocEqual = (\ (i, _) (j, _) -> i == j)
+                    pdx = Instance.pnode inst
+                    sdx = Instance.snode inst
+                    pold = fromJust $ lookup pdx accu
+                    sold = fromJust $ lookup sdx accu
+                    pnew = Node.setPri pold idx
+                    snew = Node.setSec sold idx
+                    ac1 = deleteBy assocEqual (pdx, pold) accu
+                    ac2 = deleteBy assocEqual (sdx, sold) ac1
+                    ac3 = (pdx, pnew):(sdx, snew):ac2
+                in ac3) nl il
 
 
 {-| Initializer function that loads the data from a node and list file