And this is because the implementation of IO is *specifically* crafted to guarantee this ordering. It is not a property of monads in general, or do syntax in general.
In your example a and b will be ordered as you would expect.On Wed, Apr 15, 2015 at 9:26 AM, Jon Schneider <haskell@jschneider.net> wrote:Perhaps I need to be more specific.
main = do
a <- getLine
b <- getLine
Can we say "a" absolutely always receives the first line of input and if
so what makes this the case rather than "b" receiving it ? Or do things
need to be slightly more complicated to achieve this ?
Sorry it's just the engineer in me. I think once I've got this clear I'll
be happy to move on.
Jon
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell-cafe