David Sumbler <da...@aeolia.co.uk> writes:

> From: David Kastrup <d...@gnu.org>
>> > Date: Mon, 11 Apr 2016 09:29:40 +0200
>> > 
>> > #... at top level is executed and the result ignored to allow for
>> > #(set! ...) and similar expressions with usually unspecified return
>> > #codes.  Just try
>> > 
>> > $(if sectionA compileA)
>> > 
>> > instead.
>
> This is wonderfully elegant, and is just what I was looking for.
>
> I confess, though, that I have looked at the relevant section of the
> "Extending" manual, and I could never have figured this out for
> myself.

That sounds more like something I should be confessing.  The #/$
dichotomy ($ previously was implemented via ly:export causing a lot of
problems) and define-scheme-function/define-void-function were designed
and implemented and to a good degree documented by me.  It may well be
that some aspects where decisions had to be made that were reasonably
consistent with expectations and previous behavior did not really make
it into proper documentation.

The code most certainly has seen quite more wholesale rewrites and
refactoring than the documentation: the documentation has mostly just
seen amendments additions.  Consequently, it tends to be more patchwork
and less consistent in style and organization.

-- 
David Kastrup

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

Reply via email to