lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

RE: Understanding Lilypond


From: Peter Gentry
Subject: RE: Understanding Lilypond
Date: Sat, 17 Jan 2015 12:09:27 -0000

Thanks for your reply Kieran - I'm not sure that my response is suitable for 
the list but will post it there anyway. Please feel
free to critisize scorn or otherwise flame.

1. This is difficult. My background is chiefly in Fortran and Visual Basic 
although I have dabbled with machine code. These codes
have well defined structures variables are defined there are multi dimensional 
arrays and subroutines are similarly well defined as
far as parameters and scopes are concerned.

When I look through the Lilypond source code I see

(a) at least three different languages being used C++, Scheme, and Python. It 
is not clear how these are integrated or why they are
needed.
(b) the syntax and scope of variables is hard to follow through the various 
procedures probably mainly due to a lack of
understanding of the way scheme objects are stored in memory.
I have started to learn these codes but often find various definitions and 
example scripts only work in one variety of the code. 

(c) As with most learning tasks it is important to start out with correct 
descriptions and definitions. The tyro can be led astray
by ill founded assumptions as to how the code elements work and fit together. 
In short you can see difficulties that don't exist or
try to implement unnecessary coding. A simple example being lists and 
regression in scheme the use and philosophy is different from
say Fortran and similar languages where the basic principles allow you to 
"guess" how to use unfamiliar procedures rather as you
would use paper and pencil. You can often read code and see at a glance the 
gist of what is going on.
 (d) summing up when looking at the source code there is a dazzling array of 
procedures but how and when they are called is not
clear - nor how they relate to each other. I would be looking for a main 
programme and branches to various sub programmes or
routines I.E. a flow diagram!

2. 
(a) The philosophy is outlined but is short on detailed explanation in terms of 
code. The ideas of engravers, grobs etc is
understood but the details of their parameters and how they are altered in ly 
scripts is hard to find in a systematic way.

There are excellent aids to get one writing ly scripts and producing quite 
complex scores but not to make those individual tweaks.
Looking at the various tweaks published on the list can be bewildering the 
common first impression is why? how? Where was that in
the documentation?

Maybe I'm just to long in the tooth for grasping new concepts. More experienced 
programmers will rightly say we are not spoon
feeding and you should put in the hard graft yourself. I agree with that but 
would love some signposts to reduce the feeling of
being lost in a sea of hieroglyphs. 

>-----Original Message-----
>From: Kieren MacMillan [mailto:address@hidden 
>Sent: Friday, January 16, 2015 9:40 PM
>To: Peter Gentry
>Cc: Lilypond-User Mailing List
>Subject: Re: Understanding Lilypond
>
>Hi Peter,
>
>> many of us have struggled for many months to get to grips 
>with the structure and philosophy of Lilypond.
>
>1. Regarding the structure, what are you struggling with exactly?
>
>2. Regarding the philosophy, what are you struggling with exactly?
>
>Hope I can help!
>Kieren.
>




reply via email to

[Prev in Thread] Current Thread [Next in Thread]