[Haskell-cafe] Re: :t main

Scherrer, Chad Chad.Scherrer at pnl.gov
Fri Dec 2 19:42:56 EST 2005


> From: Cale Gibbard [mailto:cgibbard at gmail.com] 
> See: 
> http://haskell.org/pipermail/haskell-cafe/2003-January/003794.html
> 
> The OI comonad as previously envisioned breaks referential 
> transparency. I/O just doesn't seem to be something which one 
> can easily do comonadically, since once coeval/extract is 
> applied, you're back to plain values, and there's no 
> imposition of sequencing.
> 
>  - Cale

Hmm, I hadn't seen that. The asymmetry is pretty frustrating in that
case.

After poking around a bit more, I (re)discovered some discussion of this
on Hawiki:
http://www.haskell.org/hawiki/CoMonad

After reading Dave Menendez's comments, I'm wondering...
If we consider
IO a = Realworld -> (Realworld, a)
then wouldn't we dually have something like
OI a = (Realworld, Realworld -> a)?

Could this be what screws things up? Right now it seems like OI is
acting like it has the same type as IO, with a different name.

Chad Scherrer
Computational Mathematics Group
Pacific Northwest National Laboratory

"Time flies like an arrow; fruit flies like a banana." -- Groucho Marx 



More information about the Haskell-Cafe mailing list