I have been trying to figure out the distinction between value, function and computation. You raised a few points that I am not sure about.
In "
"Computation" considered harmful. "Value" not so hot either." you said:
This "works" well enough; GHC manages to perform IO. But it doesn't fly mathematically. Mathematical objects never act, sing, dance, or do anything. They just are. A value that acts is an oxymoron.
Many thanks to everybody who tried to set me straight on the thread about IO monad and evaluation semantics. I've begun summarizing the info, and I believe I've come up with a much better way of explaining IO; just flip the semantic perspective, and think in terms of interpretations instead of actions. Voila! Oxymoron (values that perform actions) eliminated. See the "Computation considered harmful" and "Fixing Haskell IO" articles at http://syntax.wikidot.com/blog
Naturally I would be grateful for any corrections/comments.
Thanks,
gregg
_______________________________________________
Haskell-Cafe mailing list
Haskell-Cafe@haskell.org
http://www.haskell.org/mailman/listinfo/haskell-cafe