|
From: | Stjepan Horvat |
Subject: | Re: scheme function help |
Date: | Mon, 6 May 2013 22:32:07 +0200 |
But you did not avoid complexity. Even when not using #{ #}, how isMadoka Machitani <address@hidden> writes:
> On Mon, May 6, 2013 at 10:59 PM, David Kastrup <address@hidden> wrote:
> [...]
>
> In general, your approach is fundamentally flawed: it is very bad
> idea
> to write code relying on user-specified music to be of a
> particular type
> (in this case, SequentialMusic) without verifying it. [...]
>
> I think he is just struggling to lern Scheme now by writing simple
> functions,
> and won't understand such technical terms you provided. Also, the one
> who initially wrote flawed sample code (knowingly, to avoid
> complexity) is me.
supposed to be less complex than
insMark =
#(define-music-function (parser location mark mus)
(markup? ly:music?)
(set! (ly:music-property mus 'elements)
(cons (make-music 'MarkEvent 'label mark)
(ly:music-property mus 'elements)))
mus)
(make-sequential-music
insMark =
#(define-music-function (parser location mark mus)
(markup? ly:music?)
(list (make-music 'MarkEvent 'label mark) mus)))
? Actually, it might be worth mentioning that the above is _worse_ than
because it works worse with point&click. You should at least do
insMark =
#(define-music-function (parser location mark mus)
(markup? ly:music?)
#{ \mark #mark #mus #})
(make-sequential-music
insMark =
#(define-music-function (parser location mark mus)
(markup? ly:music?)
(list (make-music 'MarkEvent 'label mark 'origin location) mus)))
to get the same usability as the #{...#} version.
--
David Kastrup
_______________________________________________
lilypond-user mailing list
address@hidden
https://lists.gnu.org/mailman/listinfo/lilypond-user
[Prev in Thread] | Current Thread | [Next in Thread] |