SpecConstr now specialises on constants and lambdas
authorsimonpj@microsoft.com <unknown>
Tue, 15 Aug 2006 16:26:05 +0000 (16:26 +0000)
committersimonpj@microsoft.com <unknown>
Tue, 15 Aug 2006 16:26:05 +0000 (16:26 +0000)
commitc17dc70a1fbc9f376b5eab05b6a77c4af1aa7623
tree308e93eeada9645a39b76214c839d12c15bce5f2
parent969baa167e4afa382b2558a3648d57862c4401eb
SpecConstr now specialises on constants and lambdas

Roman inspired me to beef up SpecConstr to deal with
a) constant arguments
b) lambda arguments

This is described in elaborate comments in the file:
  Note [Specialising for constant parameters]
Note [Specialising for lambda parameters]

I also took the opportunity to fix the usage analysis done by
SpecConstr, which was only handling the top-level correctly.
Now it does nesting too.
compiler/specialise/SpecConstr.lhs