IDL is primarily a contract between those writing the server code, and those writing the client code. It is a formal, written, document. Secondary to this is that if it is written in a computer-like grammar, we can use it generate, automatically, a set of stubs and proxies to be used as shells for methods and procedures containing the named calls to the interface. Give three interesting points about time which must be considered with distributed systems. One sentence each.
Processes live in time.
Security keys, time stamps, etc. For single systems this is not a problem, but for distributed systems it is problematic. One simple solution is to guarantee a shared idea of time. In three sentences, or less, discuss object persistence in distributed systems. Marshalling requires serializing objects suitable for network lines.