"Matt" wrote: > So, the question: How to communicate between two instances of the > python interpreter? Specifically, I need to pass the api and objects > from bdb, the base class for the debugger. One interpreter runs the > ide, the other the debugger and client code. We were talking and just > opening a socket and doing the rest from there came up. This, to me, > (admitedly a java guy) seems like a lot of work. If it were just > setting breakppoints and stepping, well ok. But I also want to have > introspection on the debugger side objects. > > I could use raw sockets and write a bunch of stuff. > > Does anyone have a suggestion about some pythonesque way to tackle > this?
let the debugger listen to a randomly chosen local port, let the client wrapper connect back to the debugger via that port, and use a suitable marshalling layer to wrap commands and data for the introspection part. This has been done many times by many IDE developers (including yours truly). Designing the "RPC API" is the only tricky part here, and it doesn't have to be that tricky (some people are known to use really simply stuff, such as XML-RPC, for this purpose). Unless I'm completely mistaken, recent versions of IDLE have a remote debugger designed and implemented by GvR himself. Maybe you could use that code right out of the box? </F> -- http://mail.python.org/mailman/listinfo/python-list