microsoft's component object model is based heavily on msrpc, adding interfaces and inheritance. the marshalling semantics of dce/rpc are used to serialize method calls and results between processes with separate address spaces, albeit com did not initially allow network calls between different machines.