1. To join together two or more separately compiled program modules, usually with additional library modules, to form an executable program. See also link editor.
2. (linkage) A part of a program, possibly a single instruction or address, that passes control and parameters between separate portions of the program. The instruction, address, etc., links the separate portions.
3. (pointer) A character or group of characters that indicates the storage of an item of data. Thus when a field of an item A in a data structure contains the address of another item B, i.e. of its first word in memory, it contains a link to B. Two items are linked when one has a link to the other. An important case is the link left pointing into the calling code by the call of a subroutine, i.e. the value of the program counter at the point of call. See also linked list.
4. A word or phrase in a hypertext document that when selected in some way leads the user to another part of the document or to a different document.
5. (line) A path for communication that may be physical (as in a circuit) or either physical or logical (as in a channel). See also data link.