This article needs additional citations for verification. Please help improve this article by adding citations to reliable sources. Unsourced material may be challenged and removed.Find sources: "Interface description language" – news · newspapers · books · scholar · JSTOR (March 2022) (Learn how and when to remove this message)
Representation of different software components for performing a hypothetical holiday reservation in UML

An interface description language or interface definition language (IDL) is a generic term for a language that lets a program or object written in one language communicate with another program written in an unknown language. IDLs are usually used to describe data types and interfaces in a language-independent way, for example, between those written in C++ and those written in Java.

IDLs are commonly used in remote procedure call software. In these cases the machines at either end of the link may be using different operating systems and computer languages. IDLs offer a bridge between the two different systems.

Software systems based on IDLs include Sun's ONC RPC, The Open Group's Distributed Computing Environment, IBM's System Object Model, the Object Management Group's CORBA (which implements OMG IDL, an IDL based on DCE/RPC) and Data Distribution Service, Mozilla's XPCOM, Microsoft's Microsoft RPC (which evolved into COM and DCOM), Facebook's Thrift and WSDL for Web services.


See also


  1. ^ Birkholz, H.; Vigano, C.; Bormann, C. (2019). "Concise Data Definition Language (CDDL): A Notational Convention to Express Concise Binary Object Representation (CBOR) and JSON Data Structures". RFC Editor. doi:10.17487/RFC8610. S2CID 195857027. Retrieved 2022-05-24.
  2. ^ "FIDL Overview". Fuchsia. Retrieved 2022-02-23.