On Thursday 04 November 2004 18:28, Koen Claessen wrote: > Ben Rudiak-Gould wrote: > | I think the OP is proposing the same thing, except > | without the ellipsis: i.e. we just write > | > | pretty :: Doc -> String > | > | and the compiler infers pretty :: (?width :: Int) => Doc > | -> String, or whatever. This actually sounds like a very > | good idea to me. > > I think hiding the fact that certain objects are not > constants but functions is a bad idea, because it will break > sharing in a lazy implementation.
You probably mean the case where the implicit parameter is the only one. I don't see why that would "break sharing in a lazy implementation". The compiler is fully aware of the complete type of all functions and can use sharing whenever appropriate. Ben _______________________________________________ Haskell mailing list [EMAIL PROTECTED] http://www.haskell.org/mailman/listinfo/haskell