[fix heisenbug using fromAscList
John Meacham <john@repetae.net>**20050919103401] hunk ./E/Subst.hs 63
-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
+-- 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