[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
Re: Understanding the processing model
From: |
Carl Sorensen |
Subject: |
Re: Understanding the processing model |
Date: |
Sun, 19 Jul 2009 14:54:43 -0600 |
On 7/19/09 12:58 PM, "Graham Percival" <address@hidden> wrote:
> On Sun, Jul 19, 2009 at 08:31:59AM -0700, Mark Polesky wrote:
>>
>> (forwarded from -user)
>>
>> Martin Hosken wrote:
>>> Is there any documentation that explains more of the internal workings
>>> of lilypond. I'm looking for something that explains how music events
>>> get to engravers and then what happens afterwards with the layout
>>> events. 'When' are stencils executed? Is it possible to write an
>>> engraver in scm?
>>
>> +1
>
> Erik Sandberg's thesis. IIRC it's somewhere on one of the
> Publications pages.
>
> In the new website, it's in Community->Publications, and may well
> get linked to from the CG.
CG 8.1, with link to Erik's thesis.
The problem with this is that it only really describes the parsing and
iterating stages; the translation step is just so much hand waving.
It wasn't until last week that I demonstrated to myself how parsing and
translating were separated. I was debugging time-signature setting and I
demonstrated that all the music was parsed (by using display-music scheme
printouts) before any of it was translated (by displaying values in code
execution). I had heard about it before, but it made more sense after my
debugging efforts.
A well-written, simple introduction to the translation step accomplished by
translators or engravers would be a major help to understanding how to
modify LilyPond.
Carl