Choices, Choices, Choices
You can implement your choice of an RMI or XML-RPC facility. In order to provide a handout with real examples, these handouts describe the project in Java. You are, however, welcome to implement the RMI option in any language that has an object model, and the XML-RPC option in any language with either a procedure or object model.
The XML-RPC project may seem easier, because it is thinner -- but that is because it is for more advanced students with a hacking bend. To complete the project, you'll need to be able to parse either the source code or the binary code to extract the interfaces. If you want, you can also do it dynamically at runtime -- but you should not implement a separate interface description language. The XML-RPC version is for hackers -- the RMI project provides a thicker handout and more of a framework for mortals. You've been warned.
RMI Version Information (html) XML-RPC Version Information (pdf) / (doc)