1 LilyPond is a "5-pass" system:
5 No difficult algorithms. Associated datastructures have prefix Input
6 (eg Input_score, Input_command)
10 Requests are processed and granted. In this step data-structures for
11 3. are created and filled with data: PScore, PCol, PStaff
15 This step uses structures which have names starting with 'P'.
16 linebreaks and horizontal positions of PCols are determined. Line_of_*
21 Some items and all spanners need computation after the PCol positions
26 Very simple, just walk all Line_of_* and follow the links over there