lilypond-user
[Top][All Lists]
Advanced

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

Re: duration and pitch in a function


From: David Kastrup
Subject: Re: duration and pitch in a function
Date: Sun, 11 Dec 2011 11:38:57 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.92 (gnu/linux)

Jan-Peter Voigt <address@hidden> writes:

> Thanks for that hint! I will keep that in mind for future development.
> I actually use 2.14 for my allday work and create my extensions
> according to that syntax, because I want to be able to produce sheets
> day by day without stumbling over suprisingly upcoming changes.
> I know, I should have a devel (2.15 ... 2.17 ...) on my machine to be
> prepared for the next release.
> Paolo's excercise would be solved differently by me: I would use a
> ly:music? argument and copy and augment that. And I hope, ly:music?
> arguments will not be broken in future releases ;-)

They will.  My preferred newspeak for that is "they will be unbroken",
namely become much more consistent and versatile.  But that means that
there _will_ be changes in semantics for cases that are quite cumbersome
to do currently.

I manage to get my syntax changes through with very little collateral
damage, and convert-ly covers by far the largest portion of it.  I don't
do disruptive changes without good reason, and not without convert-ly
rules where applicable, and as a rule, none of them gets backed out
again once it is in.  So there are no "surprisingly upcoming changes"
that you can avoid in the long run by sticking with 2.14, and there is
very little backpedaling in development.

There has been quite a bit of heat spent on the developer lists to
arrive at semi-automatic procedures that make reasonably sure that the
current development master is kept in working state.

I can take credit for that only so far as those procedures were partly
created to withstand the strain from my flow of patches (and
particularly the strain from my accompanying abuse when it got
disrupted).  But the results naturally made it easier for everyone to
contribute exciting and numerous improvements while minimizing
disturbances on the development versions' quality.

Personally I would not "create my extensions according to 2.14 syntax"
because that is so awkward.

If you do

git diff release/2.14.2-1..origin lily/lily-lexer.cc

you'll notice that \grobdescriptions, \key, \mark, \once, \partial,
\relative, \skip, \time, \times, \transpose all have disappeared from
the lexer.

All of those are now music functions instead of being hardwired in the
syntax.  And that means that your own personal extensions could also
provide comparable functionality with comparable syntax.

-- 
David Kastrup



reply via email to

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