Thanks (car ) was the trick I would have been looking for a long time to come up with that one.
(car (...))- returns the first member of a list. I'm assuming that if that member is a function it returns the functions result, which is why we get the solution? Scott -----Original Message----- From: Michael Ellis [mailto:[email protected]] Sent: Saturday, January 29, 2011 07:01 PM To: [email protected] Cc: [email protected] Subject: Re: Nesting ly:music-property error Sorry, my previous answer was rubbish. The following runs withouterror and prints the pitch object.myN = #(define-music-function (parser location myx ) (ly:music?) (display-scheme-music (ly:music-property (car (ly:music-property myx 'elements)) 'pitch)) myx) \myN cCheers,MikeOn Sat, Jan 29, 2011 at 6:46 PM, Michael Ellis wrote:> Hi Scott,>> I think the problem is that the music in your example doesn't have an> 'elements property. You can eliminate the error by changing the third> line in your code to>> #(display-scheme-music (ly:music-property $myx 'pitch))>> but what gets displayed is an empty list '(). Probably not what you> want, right?>> Some of the more experienced Schemers on the list may be able to offer> better help.>> Cheers,> Mike>>>> On Sat, Jan 29, 2011 at 6:28 PM, wrote:>> myN = #(define-music-function (parser location myx ) (ly:music?)>> #{>> #(display-scheme-music (ly:music-property (ly:music-property $myx 'elements)>> 'pitch))>> #})>>>> \myN c>
_______________________________________________ lilypond-user mailing list [email protected] http://lists.gnu.org/mailman/listinfo/lilypond-user
