|
From: | David Nalesnik |
Subject: | Re: Creating LilyPond Object Models |
Date: | Thu, 23 Apr 2015 08:22:31 -0500 |
* 2015-04-23 01:29 +0200:
> Translators are program elements that convert music expressions to output.
> Engravers are translators that create printed output. Performers are
> translators that create midi output.
>
> Translators examine the music expressions that are contained in the
> context, and create output elements. For the case of engravers (which
> create graphical output), the output elements are grobs. The grobs have
> properties that are used to create their appearance on the page.
This is very simplified. Translators do not operate on music expressions
directly, and music expressions are not themselves contained in
contexts. This level of understanding may get you relatively far as a
user, but is not even sufficient for reading the Internals Reference.
It has been a while since I last tried to wrap my head around this, but
from memory:
Program elements called Iterators turn music expressions into a
time-ordered stream of Events sorted into contexts. The different types
of Events produced at this stage are listed here:
<http://lilypond.org/doc/v2.18/Documentation/internals/music-expressions>
[Prev in Thread] | Current Thread | [Next in Thread] |