The base layer of the Adage implementation is the MDAG system in combination with the Adage language. This language is used across the whole MDAG system for a variety of purposes. First, POStiche types and their transformation operations are defined using it. Second, drawings are specified as MDAG nodes and connections. Third, macros, drawing elements and transformations are defined as MDAG nodes and connections. Hence, a drawing is realized by recursive breaking down until a network of irreducible nodes is reached. Fourth, interactive operation is implemented as a special set of transformations and irreducible nodes. Fifth, file formats are ordinary commands that rebuild the network of nodes at the uppermost level. Sixth, batch scripts and master programs using Adage as a slave library utilize special invocation commands that are realized as nodes.
Thus the main engine is an implementation of the Adage language that manipulates MDAG networks and POStiche objects. All drawing elements are provided in libraries that build on this foundation. Libraries at the lower level define basic drawing elements. At the top level are elements that are specific to applications. Specialized nodes provide external interaction. Through these a library of Adage functions provide for GUI operation and use as a slave library.