From: simonpj@microsoft.com Date: Wed, 3 Sep 2008 11:56:29 +0000 (+0000) Subject: Improved specialisation of recursive groups X-Git-Url: http://git.megacz.com/?p=ghc-hetmet.git;a=commitdiff_plain;h=78260da4deee97a866ba83f8d73a8284b371f405;hp=78260da4deee97a866ba83f8d73a8284b371f405 Improved specialisation of recursive groups This patch significantly improves the way in which recursive groups are specialised. This turns out ot be very important when specilising the bindings that (now) emerge from instance declarations. Consider let rec { f x = ...g x'... ; g y = ...f y'.... } in f 'a' Here we specialise 'f' at Char; but that is very likely to lead to a specialisation of 'g' at Char. We must do the latter, else the whole point of specialisation is lost. This was not happening before. The whole thing is desribed in Note [Specialising a recursive group] Simon ---