"Trevor Daniels" <t.dani...@treda.co.uk> writes:

> Now while this works it seems rather clunky, so I'm wondering if there
> is a more elegant way of doing this.  Symbols look like they might
> help, but so far I've failed to make anything work.  I've also failed
> with macros, but that's likely because I don't understand them yet.

When a function is evaluated, its arguments are read, evaluated, and the
function is called with the unevaluated arguments, and the result of
that call is used.

When a macro is evaluated, its arguments are read, the macro is called
with the unevaluated arguments, and the result of that call is
evaluated before use.

It's just a matter of where the evaluation happens.  With a function, it
is before the call, with a macro, it is after the call.  That's all
there is to it.

-- 
David Kastrup

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

Reply via email to