Hello Ian, 'third' is just a synonym for 'caddr', and it is part of SRFI-1, which is implemented by Guile, the scheme interpreter used in LilyPond.
See: http://www.gnu.org/software/guile/manual/html_node/SRFI_002d1-Selectors.html#SRFI_002d1-Selectors http://srfi.schemers.org/srfi-1/srfi-1.html#Selectors Cheers, Felipe 2011/1/9 Ian Hulin [via LilyPond Frogs] <[email protected]>: > -----BEGIN PGP SIGNED MESSAGE----- > Hash: SHA1 > > Hi all, > > In ly_syntax_constructors.scm there are these lines > > (defmacro define-ly-syntax-loc (args . body) > `(define-public ,args > (let ((m ,(cons 'begin body))) > (set! (ly:music-property m 'origin) ,(third args)) > ;; ^^^^^^^^^^ > m))) > > (third) doesn't seem to be defined in our code (I've searched with git > grep), and I can't find any reference in the Guile/scheme documentation. > > I'd like to understand what this macro does as I want to see if there's > any possibility of doing all the stuff in ly_syntax_constructors stuff > via (define-syntax). > > Sorry if the answer is really obvious but I'd really like to know where > (third) is defined. > > Cheers, > > Ian Hulin > -----BEGIN PGP SIGNATURE----- > Version: GnuPG v1.4.10 (GNU/Linux) > Comment: Using GnuPG with Mozilla - http://enigmail.mozdev.org/ > > iQEcBAEBAgAGBQJNKj9xAAoJEBqidDirZqASzAwIALF11q2v9qMiSuLt1Spp+19S > j2bX2bxFbdEak+MPFLTj3lLwls3LsG82Yefu0QvD+3aZ71cRJXLgEGtfUox6B+w/ > QTAgnexAySoUwiYUlotVVm87+ibQpeTyDOuT9mIoyoOlGi/0Hm8dg5mRWelsE37H > tT7UjSWGHOYKUNdX2zrUvF9rURj/HK4duYJfejkmbyVgR4cX+1fY7bb6KyVLSmt5 > MjjcaGGjyZ4Q6CqIT7NhYU6k5D3BJFblqsQP87k+1bKiGAH7LYeouxOp9iqsi2/b > 6FW6Rgya3lFcY+Zw4aYpHltjOf+oCkOBbJqdRUBz7Wnt8mq+bqlOhUrQ+vQSeik= > =BbmQ > -----END PGP SIGNATURE----- > > --- > ---- > Join the Frogs! > > > > ________________________________ > View message @ > http://lilypond-frogs.2124236.n2.nabble.com/Scheme-function-third-used-in-ly-syntax-constructors-tp5905482p5905482.html > To start a new topic under LilyPond Frogs, email > [email protected] > To unsubscribe from LilyPond Frogs, click here. -- View this message in context: http://lilypond-frogs.2124236.n2.nabble.com/Scheme-function-third-used-in-ly-syntax-constructors-tp5905482p5905565.html Sent from the LilyPond Frogs mailing list archive at Nabble.com.
