Fri, Jun 10, 2011 at 03:27:44PM +0200, Heinrich Apfelmus wrote > Alexander V Vershilov wrote: > > > > I'm writing a small tcp server with that can handle connections and > > answer by rules writen in a small script that can be interpreted by server. > > For this purpose I've written an interpreter that has type > > > > ErrorT MyError (StateT ScriptState IO) > > > > so I can call "native" IO function in that script, and define new one. > > I can run this script with runState (runErrorT (...)) oldState. > > > > But there is one problem: in script i should be able to call functions that > > will stop script interpretation and wait for some server event. To continue > > interpretation. > > > > Can smb give an advice what is the best way to do it? > > Basically, you want to stop the interpreter and resume it at some later > point. You need to implement a custom monad for that, which can easily > be done with the help of my operational package. > > http://projects.haskell.org/operational/ > > In particular, the examples > > WebSessionState.lhs > TicTacToe.hs > PoorMansConcurrency.hs > > show how to suspend and resume the control flow. Feel free to request > additional examples. > > > Best regards, > Heinrich Apfelmus >
Operational package is the what I need, thanks. Documentation is and examples are very good so I think I'll have no problems to implement such a behavior. -- Best regards Alexander V Vershilov
pgpTwo7hDSmK0.pgp
Description: PGP signature
_______________________________________________ Haskell-Cafe mailing list [email protected] http://www.haskell.org/mailman/listinfo/haskell-cafe
