On Sat, 28 Jan 2006, Twan van Laarhoven wrote: > Benjamin Franksen wrote: > > > My personal opinion is that it should be exactly the other way around: > > > > All normal bindings (i.e. using '=') should be as polymorphic and > > general as possible. > > Do you mean *all* bindings, or only top-level ones? If you really mean all, > wouldn't e be polymorphic (with type Num a=>a) in, say: > > f x = e + e > > where e = very_expensive_polymorphic_function x > > That would be a Very Bad Thing. >
Is there any reason in that particular case that the dictionary transform can't produce something like this: f x d = e' + e' where e d = very_expensive_polymorphic_function x d e' = e d ? What's the pathological case that prevents this applying more generally? -- [EMAIL PROTECTED] Performance anxiety leads to premature optimisation _______________________________________________ Haskell-prime mailing list Haskell-prime@haskell.org http://haskell.org/mailman/listinfo/haskell-prime