Announcing a new Haskell JSON RPC library, remote-json, that uses the remote monad to bundle remote procedure calls, amortizing the cost of remote execution. There are thee bundling strategies provided:
* weak (calls done one at a time), * strong (calls bundled until a reply is needed, where possible), and * applicative (an applicative functor is sent to the remote JSON RPC server). Example of use: say :: Text -> RPC () say msg = notification "say" (List [String msg]) temperature :: RPC Int temperature = method "temperature" None main :: IO () main = do let s = strongSession $ clientSendAPI "http://www.wibble.com/wobble" t <- send s $ do say "Hello, " say "World!" temperature print t Blog: * http://ku-fpg.github.io/2016/02/09/remote-json/ <http://ku-fpg.github.io/2016/02/09/remote-json/> Hackage: * http://hackage.haskell.org/package/remote-json <http://hackage.haskell.org/package/remote-json> * http://hackage.haskell.org/package/remote-json-client <http://hackage.haskell.org/package/remote-json-client> * http://hackage.haskell.org/package/remote-json-server <http://hackage.haskell.org/package/remote-json-server> Github: * https://github.com/ku-fpg/remote-json <https://github.com/ku-fpg/remote-json> Andy Gill & Justin Dawson
_______________________________________________ Haskell mailing list Haskell@haskell.org http://mail.haskell.org/cgi-bin/mailman/listinfo/haskell