
-----BEGIN PGP SIGNED MESSAGE----- Hash: SHA1 On 8/15/10 13:27 , Tillmann Rendel wrote:
Brandon S Allbery KF8NH wrote:
I am confused by this discussion. I originally thought some time back that IO was about "world passing", but in fact it's just handing off a baton to insure that a particular sequence of IO functions is executed in the specified sequence and not reordered. Nothing in the "baton" is intended to represent the actual "state of the world", nor is anything said about concurrent actions either in another thread of the current program or elsewhere outside the program; only ordering of calls in the *current* thread of execution.
That explains how the IO monad forces side-effecting functions into a specified sequence, but this discussion is about how to understand what these side-effecting functions do in a *pure* framework. So the idea is to
I think that *is* included in what I said, by negation: it doesn't. Period. (As Conal observed.) Trying to take the Haskell representation of IO as the basis for a formal description of I/O actions is pretty much doomed from the start; adding records or etc. will at best mask the symptoms. - -- brandon s. allbery [linux,solaris,freebsd,perl] allbery@kf8nh.com system administrator [openafs,heimdal,too many hats] allbery@ece.cmu.edu electrical and computer engineering, carnegie mellon university KF8NH -----BEGIN PGP SIGNATURE----- Version: GnuPG v2.0.10 (Darwin) Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ iEYEARECAAYFAkxoLP8ACgkQIn7hlCsL25W4QACgtJ4bz/W5fHVV/DxNgt8R39C8 ZkEAnj7rUnoUh4UQDFRdLeHKVmP8HLKS =jnty -----END PGP SIGNATURE-----