An IDL is an interface definition language. The most well-known is CORBA. An IDL compiler takes a specification and generates stubs that hide the transport details. In the case of [[MIG]], this hides the marshalling and unmarshalling of parameters according to Mach's semantics.