[Haskell-cafe] Very crazy

Brandon S. Allbery KF8NH allbery at ece.cmu.edu
Tue Sep 25 09:25:23 EDT 2007

On Sep 25, 2007, at 7:25 , Andrew Coppin wrote:

> Chaddaï Fouché wrote:
>> 2007/9/25, Andrew Coppin <andrewcoppin at btinternet.com>:
>>>> printf don't always perform IO : if you ask it for a String it will
>>>> happily turn into sprintf for you, if you use it in the IO  
>>>> Monad, it
>>>> will indeed perform IO, but there's nothing fundamentally IO  
>>>> bound in
>>>> printf logic.
>>> That's even *more* impossible... o_O
>> Why ?
> How can one function have more than one type signature?

Polymorphism via typeclasses.  PrintfType is rather hairy, as I said,  
but it can do the job by having instances for IsString (itself a hack  
of sorts) and IO.

brandon s. allbery [solaris,freebsd,perl,pugs,haskell] allbery at kf8nh.com
system administrator [openafs,heimdal,too many hats] allbery at ece.cmu.edu
electrical and computer engineering, carnegie mellon university    KF8NH

More information about the Haskell-Cafe mailing list