An architecture description language is used to specify the structure of a system separately from its algorithmic aspects.
Also known as Module Interconnection Language, Configuration Language.
Examples include:
Probably very little, although ADL's are usually declarative, do not have many general programming features and may not be TuringComplete.
Note UML (http://www.uml.org) is not an ADL but it could be possible to extend some parts of UML to make them an ADL.