Simon Marlow writes

> Thanks for the report, but the bug is in the docs - it should say
>"SPECIALISE pragmas with a '= g' part are not implemented yet".  This kind
> of specialisation used to work in 0.xx, but since the rewrite we haven't got
> around to implementing it in the new specialiser.


SPECIALIZE with '='  is very desirable.
Otherwise, how can one denote with the same name a function together 
with its particularly efficient specialization?
If i knew of this `=' possibility, i would have raised the noise two 
years earlier.
Second question: is this hard to implement specializations like

  f :: C a => a -> ...               -- exported function
  f    x = ...

  f_spec :: (C a, D a) => a -> ...   -- hidden function 

  {-# SPECIALIZE f :: (C a,D a) => a -> ... = f_spec #-}

And the next step might be making this pragma standard ...
This will bring a bit of happiness to the Haskell world.

------------------
Sergey Mechveliani
[EMAIL PROTECTED]


Reply via email to