lilypond-devel
[Top][All Lists]
Advanced

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

Re: preliminary GLISS discussions


From: Han-Wen Nienhuys
Subject: Re: preliminary GLISS discussions
Date: Sat, 1 Sep 2012 12:10:22 -0300

On Sat, Sep 1, 2012 at 8:11 AM, Graham Percival
<address@hidden> wrote:
> On Fri, Aug 31, 2012 at 11:11:28PM -0300, Han-Wen Nienhuys wrote:
>> I have become convinced that optional, unnamed arguments are not a
>> happy design decision, in any language. In Lily it's particularly
>> problematic, since we don't group function parameters.
>
> I agree; it's a mess.  Let's examine David's most hated example:
>
> \version "2.15.0"
> {
>   \tempo 4 = 60
>   c1 c
>   \tempo 4. = 60 ~ 72
>   c1 c
>   \tempo "Andante"
>   c1 c
>   \tempo "Allegro" 4 = 120
>   c1 c
>   \tempo "Allegro" 4 = 120 ~ 144
>   c1 c
>   \tempo \markup{ Presto } 4. = 172 ~ 188
>   c1 c
> }
>
> What are the options here?
> 1) use explicit delimiters for function arguments
>   (i.e. \tempo {...})
> 2) add a "non-argument" like \default for all parameters which are
> not needed
> 3) define different function names, i.e. \tempoNumber,
> \tempoNumberRange, \tempoText, \tempoTextNumber...
>
> NB: I am not suggesting that all or any of those ideas are good;
> I'm just trying to list the options that I can think of.

you are skipping the obvious solution, which is to do nothing, and have the user
override the tempo text manually with a markup.  A solution, which is
more verbose, but also more explicit, and needs no parser wizardry.

-- 
Han-Wen Nienhuys - address@hidden - http://www.xs4all.nl/~hanwen



reply via email to

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