ENP is used as the notational front-end in PWGL. ENP is a music notation program that has been developed in order to meet the requirements of computer aided composition, music analysis and virtual instrument control. It is intended to represent Western musical notation from 17th century onward including 20th century notation. ENP is not a full featured music typesetting program. It is, however, designed to produce automatic, reasonable musical typesetting according to the common practices.
Some of the key concepts behind ENP are:
- it can be used to represent a wide range of notational styles.
- it has a mouse driven user interface that relies on direct editing, i.e., almost every notational object can be edited in the score with synchronized visual feedback.
- it provides access to its notational data structures, and it can be controlled algorithmically.
- it provides a rich library of standard and user-definable expressions. They range from standard articulation markings to fully interactive multipurpose graphical expressions.
Figure 1 gives an example of a score written in traditional metric notation with some standard expression markings, such as accents, slurs, and dynamics. The score shows a typical setting for guitar, where there are multiple voices written in a single staff system.
Figure 2 gives an example of a modern score containing several parts written using invisible note heads, stems, and barlines. Here, special line-shaped expressions are used to create a glissando texture. These expressions are able to follow the defined pitch contour in case the score is, for example, transposed. This kind of behavior is different from any of the existing approaches where graphical information is often considered passive in nature.
Figure 3, in turn, shows how relatively complex graphical notation can be entered with the help of ENP. Similar notation can be found, for example, in the works of Boguslaw Shaeffer. A special ENP-expression, called canvas-expression is used to draw the graphical information in the score. Canvas-expression is a device that can be used to draw graphical objects by constructing them out of a predefined selection of graphical primitives, thus it behaves like a miniature drawing program inside the score.