[Haskell-cafe] IO is not a monad
Scott Turner
haskell at billygoat.org
Thu Jan 25 22:39:38 EST 2007
On 2007 January 23 Tuesday 17:33, Yitzchak Gale wrote:
> 1. Find a way to model strictness/laziness properties of Haskell functions
in a category in a way that is reasonably rich.
> 2. Map monads in that category to Haskell, and see what we get.
> 3. Compare that to the traditional concept of a monad in Haskell.
>
> Is this possible? Any more ideas how to proceed?
Paul B. Levy's studies of "call-by-push-value" model strictness/laziness using
a category theoretic approach.
He considers evaluation as an effect, such that if you brought it into Haskell
you would expect evaluation to take the form of a monad transformer.
There would be difficulty, though, in the same areas which have been discussed
in this thread, because his morphisms are functions on something distinct
from Haskell values. The corresponding monads could return data in WHNF and
thunks of functions, but not functions themselves.
More information about the Haskell-Cafe
mailing list