Carl D. Sorensen wrote:
N.R 6.7 shows the use of Scheme code as an articulation.  The reason why
this works is unclear to me, but I can see there is some power here.  An
explanation would be really helpful.  The articulation that is added is not
a Scheme function, but rather the return part of a Scheme function.
An articulation is represented by a Scheme expression (not a Scheme function):
(make-music
         'ArticulationEvent
         'direction
         1
         'articulation-type
         "flageolet"))

Here, a Scheme function is used, which constructs such an expression. These things are pretty common in the world of Scheme and similar languages. I once worked with a huge program implemented in LISP, where the program constructed new LISP expressions, which were evaluated and in their turn constructed new LISP expressions which were evaluated ... and in the end returned something. I can honestly say that none of us at the company understood fully how that program worked, but for some weird reason it seemed to work fairly well anyway.

  /Mats


_______________________________________________
lilypond-devel mailing list
lilypond-devel@gnu.org
http://lists.gnu.org/mailman/listinfo/lilypond-devel

Reply via email to