Hello, I'm wondering how can I use Happstack's MACID in my application without breaking everything.
I have a monad like that: type Comm = StateT Communication IO type GameState a = StateT Game Comm a and many functions like: foo :: GameState () foo = do lift $ putComm <some message to player's channel> modify <someAction> The state of the game is stored in Game. Comm is used as an abstraction to communicate over several channels with players. Whereas MACID asks to use: type *Update* state = Ev<http://happstack.com/docs/0.5.0/happstack-state/Happstack-State.html#t%3AEv>( StateT<http://happstack.com/docs/0.5.0/mtl/Control-Monad-State-Lazy.html#t%3AStateT>state STM <http://happstack.com/docs/0.5.0/base/GHC-Conc.html#t%3ASTM>) How can I use this without modifying everything?? I understand that MACID must record the <someAction> from above but the message should not. Thanks for help! Corentin
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe