except it's not boilerplate, in the same way all your programs are not boilerplate. They are *different* programs.
-
-
This is great. The only problem (as with Eff) is composing certain effects lawfully (print and read have no laws).
1 reply 0 retweets 1 like -
What would that mean though? What laws could otherwise come about to give a benefit? The classy prism is as lawful as it gets.
1 reply 0 retweets 0 likes -
If your algebra had throwError and catchError (as MonadError), then that has laws, which can't mix symmetrically with MonadCont.
1 reply 0 retweets 0 likes -
Why do I even want these things?
1 reply 0 retweets 0 likes -
I find MonadError's effects just part of life; the world of MonadCont's utility is still a world I need to explore more (
@kmett?).2 replies 0 retweets 0 likes -
Replying to @shajra @etorreborre and
I don't think it applies to this case. It seems unnecessary.
1 reply 0 retweets 1 like -
Replying to @dibblego @etorreborre and
If your effects indeed compose the way you want, then by all means Eff or Free away.
2 replies 0 retweets 0 likes -
Replying to @shajra @etorreborre and
I use MonadError (misnamed MonadEither) in the error case. This just isn't that case.
2 replies 0 retweets 0 likes -
Replying to @dibblego
"misnamed MonadEither" I thought the name was to generalize branching
1 reply 0 retweets 0 likes
If MonadEither came to exist, it would be the same structure as MonadError.
-
-
Replying to @dibblego
Right. But I thought it was named Either so you could model Int | Str as well as Fail | Success
0 replies 0 retweets 0 likesThanks. Twitter will use this to make your timeline better. UndoUndo
-
Loading seems to be taking a while.
Twitter may be over capacity or experiencing a momentary hiccup. Try again or visit Twitter Status for more information.