lilypond-user
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: Macro pre-processing?


From: Graham Percival
Subject: Re: Macro pre-processing?
Date: Sun, 30 Apr 2006 05:28:12 -0700


On 30-Apr-06, at 3:49 AM, Nicolas Sceaux wrote:

"David Feuer" <address@hidden> writes:

On 4/29/06, Geoff Horton <address@hidden> wrote:

I question that. I think it looks easy to you because you already know
how it all works and fits together.

I'm tired of these kinds of remarks.

They do certainly crop up often.

Agreed.  LilyPond is a domain-specific language.  It is rather odd
that it is necessary to break out into a different language to do a
great many things.

2) Scheme *is* part of LilyPond language, using #, and scheme "macro and other capabilities" are indeed used. what do you think happens when one writes:

pad = #(define-music-function (parser location padding music) (number? ly:music?)
        #{ \once \override TextScript #'padding = #$padding
           $music #})

In Geoff's defense, this kind of construct _is_ more complicated (to an end-user) than it needs to be -- why the define-music-function, why the "parser location" (don't bother to explain it to me yet), etc. It would be easier for users if we could just write
pad = #function (padnum) (number?) %{
  \once \override TExtScript #'padding = #$padnum
%}
(of course, we'd still get complaints about the weird syntax)
That said, my opinion is that users can live with it. Do the blind copy-and-paste thing; change the "TextScript" to "DynamicLineSpanner" or whatever you need; it's not a big deal.

To those who complain that this could be better documented, please see sections 4.4 and 5.3 in the bleeding edge documentation. If you don't know what I'm talking about, then just wait a few weeks.


I don't understand the point of this discussion.

This is the point I really want to jump on. After the first two or three emails, this descended into the usual pointless spat over ease-of-use and documentation. Stop talking about it, and start doing something! If we all spent half as much time _working_ on the docs that we've spent _talking_ about them, they'd be twice as good by now.

- Graham





reply via email to

[Prev in Thread] Current Thread [Next in Thread]