iu-parfunc / lvars

The LVish Haskell library
http://hackage.haskell.org/package/lvish
80 stars 14 forks source link

Misleading type of runCancelT #122

Open osa1 opened 9 years ago

osa1 commented 9 years ago

Currently it has this type:

runCancelT :: ParMonad p => CancelT p e s a -> p e s a

From the type it seems like CancelT computation should always return an a, but that's not the case, for example:

runCancelT (cancelMe >> return a)

This shouldn't return anything. (I haven't tested it yet, so I don't know what's happening when this expression run using current version)