
Am Donnerstag 28 Januar 2010 09:14:38 schrieb Ketil Malde:
Daniel Fischer
writes: It has been known to call such things 'computations',
I think "actions" has been used, too, but perhaps mostly for things in IO and similar monads?
as opposed to 'values', and even to separate the categories of types and expressions which deliver the two.
As usual, that only works part of the time. [1,4,15,3,7] is not a computation, it's a list of numbers. A plain and simple everyday value.
But isn't a value of (IO String) equally plain and simple?
Sure, but saying a value of type IO String is "a computation (in the IO monad) returning a String" makes more sense to me than saying [True,False,True] is "a computation (in the [] monad) returning a Bool".
I think I prefer (as somebody suggested) "monadic value",
Yes, that works for all monads.
so that (if you want to stress this aspect of its use) the list is a monadic Int value in the [] monad, while getLine is a monadic String value in the IO monad, and so on. Maybe.
-k