Rpc server support.
Have you any plans to implement this?
That's an interesting idea, but I never had any plans to do this. Calling Emacs functions remotely sounds kind of neat. However, if it's just another Emacs instance making the calls, they may as well be speaking with s-expressions rather than the much more limited JSON.
JSON-RPC is transport agnostic, so there are literally a million ways this library could go. It would be a waste of time to arbitrarily add lots of new transport protocols without having specific uses in mind. The itch that caused me to write this library was a desire to talk to bitcoind from Emacs. This required HTTP transport, so that's all I put in so far.
What project did you have in mind that needs an Emacs JSON-RPC server?
Currently I plan to implement wrapper around python debugger. Get interesting module, insert line like import emacs_pdb; emacs_pdb.set_trace(). Run project or tests as always in separate terminal. When debugger enter the break point it will open new emacs frame with elisp command. When I run next and step commands it will keep emacs cursor at most resent module line under calls stack. If step command go to new module than emacs must open this file and go to the current method definition.
Currently I plan to do this through emacs client eval method, but search for more appropriate solution.
I see what you're getting at.
Is there a remote Python debugger that already speaks JSON-RPC? Does pdb already use it? A quick search turns up something called qdb, but, if I'm understanding it correctly, it would be the server. This Emacs library should already work as-is for that.
If you're starting from scratch, I don't think JSON-RPC is necessarily a good choice for this. It's a one-way request/response protocol, much like HTTP. You'd have to rely on long-polling and establishing two parallel channels to layer a two-way protocol on top of it (e.g. BOSH). That's been a complication in my work on Skewer, which connects Emacs to JavaScript running in a browser.
Qdb seems opposite to my necessaries. I want debbuger talking to emacs with synchronous rpc calls. I think that one way request/response protocol is appropriate for this purpose.
Also, do you know about emacs-epc project? Maybe you have some good points on it.