[Haskell-cafe] IO vs MonadIO

2012-09-12 Thread Sergey Mironov
Hi. Just a brief question. System.IO functions are defined in IO monad
and have signatures like Foo - IO Bar.
Would it be better to have all of them defined as (MonadIO m) = Foo
- m Bar? What are the problems that would arise?

Sergey

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] IO vs MonadIO

2012-09-12 Thread Ivan Lazar Miljenovic
On 12 September 2012 18:24, Sergey Mironov ier...@gmail.com wrote:
 Hi. Just a brief question. System.IO functions are defined in IO monad
 and have signatures like Foo - IO Bar.
 Would it be better to have all of them defined as (MonadIO m) = Foo
 - m Bar? What are the problems that would arise?

That would require MonadIO being defined in base, and might make some
existing code fail due to lack of type signatures (though I suppose
you could specify a default).

-- 
Ivan Lazar Miljenovic
ivan.miljeno...@gmail.com
http://IvanMiljenovic.wordpress.com

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe


Re: [Haskell-cafe] IO vs MonadIO

2012-09-12 Thread Ivan Lazar Miljenovic
On 12 September 2012 19:55, Ivan Lazar Miljenovic
ivan.miljeno...@gmail.com wrote:
 On 12 September 2012 18:24, Sergey Mironov ier...@gmail.com wrote:
 Hi. Just a brief question. System.IO functions are defined in IO monad
 and have signatures like Foo - IO Bar.
 Would it be better to have all of them defined as (MonadIO m) = Foo
 - m Bar? What are the problems that would arise?

 That would require MonadIO being defined in base, and might make some
 existing code fail due to lack of type signatures (though I suppose
 you could specify a default).

Oh, and you'd still need to define them all somewhere to work _for_ IO
so you can then have the liftIO variants anyway.


 --
 Ivan Lazar Miljenovic
 ivan.miljeno...@gmail.com
 http://IvanMiljenovic.wordpress.com



-- 
Ivan Lazar Miljenovic
ivan.miljeno...@gmail.com
http://IvanMiljenovic.wordpress.com

___
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe