Skip to content

Latest commit

 

History

History
24 lines (19 loc) · 1.16 KB

idl.mdwn

File metadata and controls

24 lines (19 loc) · 1.16 KB

[[!meta copyright="Copyright © 2002, 2003, 2007, 2008, 2010 Free Software Foundation, Inc."]]

[[!meta license="""[[!toggle id="license" text="GFDL 1.2+"]][[!toggleable id="license" text="Permission is granted to copy, distribute and/or modify this document under the terms of the GNU Free Documentation License, Version 1.2 or any later version published by the Free Software Foundation; with no Invariant Sections, no Front-Cover Texts, and no Back-Cover Texts. A copy of the license is included in the section entitled [[GNU Free Documentation License|/fdl]]."]]"""]]

[[!meta title="IDL"]]

An IDL is an interface definition language ([[!wikipedia Interface_description_language desc="Wikipedia article"]]). A well-known one is CORBA. These are [[DSL]]s.

An IDL compiler takes a specification and generates stub code that hides the transport details, and by this implements a [[RPC]] system.

In the case of [[Mach's MIG|microkernel/mach/mig]], this hides the marshalling and unmarshalling of procedures' parameters to and from [[microkernel/mach/message]] format, according to [[microkernel/Mach]]'s semantics, and invoking the respective [[microkernel/mach/port]] operations.