[improve speed of subst by using fromAscList
John Meacham <john@repetae.net>**20050920013905] hunk ./E/Subst.hs 63
--- TODO - why doesn't this work? perhaps it tickles the IntMap bug.
---substMapScope' allShadow im ss e = doSubst False allShadow (Map.fromAscList [ (x,Nothing) | x <- IS.toAscList ss ] `Map.union` Map.fromAscList [ (x,Just y) |  (x,y) <-  IM.toAscList im]) e
-substMapScope' allShadow im ss e = doSubst False allShadow (Map.fromList $ [ (x,Nothing) | x <- IS.toAscList ss ] ++  [ (x,Just y) |  (x,y) <-  IM.toAscList im]) e
+substMapScope' allShadow im ss e = doSubst False allShadow (Map.fromAscList [ (x,Just y) |  (x,y) <-  IM.toAscList im] `Map.union` Map.fromAscList [ (x,Nothing) | x <- IS.toAscList ss ]) e