Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread Janek Warchoł
On Wed, Oct 10, 2012 at 12:00 AM, David Kastrup d...@gnu.org wrote:
 I'm not sure about the validity of your conclusion.  Writing tuplets
 is such a central element of inputting music that a special treatment
 is probably justified, even at the cost of hardwiring.

 We are talking about writing \tuplet 3:2 { ... } instead of \tuplet 3/2
 { ... } here.  Whether tuplets are central or not, this single-character
 difference is purely cosmetic, and it is well-known that
 obsessive-compulsive cosmetic surgery is not exactly guaranteed to
 maximize the obtained output of beauty.

Uh, it /sounds like/ you're suggesting that Werner has
obsessive-compulsive disorder.
I'm pretty sure that's you didn't mean this, but it might be worth clarifying.

 In the end, LilyPond needs to fit together like a fugue; local
 beautification without consideration of the whole is painting yourself
 into corners that become increasingly harder to get out of again.

+1

Janek

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: Clefs and transposition [was: Re: [proposal] easy triplets and tuplets - Draft 3]

2012-10-10 Thread Janek Warchoł
On Wed, Oct 10, 2012 at 3:15 AM, Joseph Rushton Wakeling
joseph.wakel...@webdrake.net wrote:
 On 10/10/2012 12:08 AM, Joseph Rushton Wakeling wrote:
 []

 All of this (and what follows) seems rather aggressive and blunt on a second
 reading -- wasn't meant to be.  Apologies. :-\

No problem, i didn't consider it offensive.

I suppose we have to agree to disagree - you haven't convinced me
(while i'm all for defining standards, i still want them to be notated
explicitely), and i probably won't convince you.

cheers,
Janek :)

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread David Kastrup
Janek Warchoł janek.lilyp...@gmail.com writes:

 On Wed, Oct 10, 2012 at 12:00 AM, David Kastrup d...@gnu.org wrote:
 I'm not sure about the validity of your conclusion.  Writing tuplets
 is such a central element of inputting music that a special treatment
 is probably justified, even at the cost of hardwiring.

 We are talking about writing \tuplet 3:2 { ... } instead of \tuplet 3/2
 { ... } here.  Whether tuplets are central or not, this single-character
 difference is purely cosmetic, and it is well-known that
 obsessive-compulsive cosmetic surgery is not exactly guaranteed to
 maximize the obtained output of beauty.

 Uh, it /sounds like/ you're suggesting that Werner has
 obsessive-compulsive disorder.

 I'm pretty sure that's you didn't mean this, but it might be worth
 clarifying.

Well, I already met Werner in an ice parlor in Dortmund.  I hope I am
not overstepping the boundaries of politeness by expressing my belief
that I don't consider it likely that he has subjected himself to
anything approaching obsessive-compulsive amounts of cosmetic surgery,
so I hope I have not touched a sensitive spot here.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread Werner LEMBERG
 We are talking about writing \tuplet 3:2 { ... } instead of \tuplet
 3/2 { ... } here.  Whether tuplets are central or not, this
 single-character difference is purely cosmetic, and it is
 well-known that obsessive-compulsive cosmetic surgery is not
 exactly guaranteed to maximize the obtained output of beauty.
 
 Uh, it /sounds like/ you're suggesting that Werner has
 obsessive-compulsive disorder.

No, it doesn't.  Just think of who is going to do the surgery :-)

Regarding the cosmetics, I think we should always think of the user:
It is a matter of fact that triplets are either marked with a single
digit, or with a ratio like `4:3'.  I think it is not too far
stretched to expect that lilypond should follow such conventions even
in the input.


Werner

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread David Kastrup
Werner LEMBERG w...@gnu.org writes:

 We are talking about writing \tuplet 3:2 { ... } instead of \tuplet
 3/2 { ... } here.  Whether tuplets are central or not, this
 single-character difference is purely cosmetic, and it is
 well-known that obsessive-compulsive cosmetic surgery is not
 exactly guaranteed to maximize the obtained output of beauty.
 
 Uh, it /sounds like/ you're suggesting that Werner has
 obsessive-compulsive disorder.

 No, it doesn't.  Just think of who is going to do the surgery :-)

 Regarding the cosmetics, I think we should always think of the user:
 It is a matter of fact that triplets are either marked with a single
 digit, or with a ratio like `4:3'.  I think it is not too far
 stretched to expect that lilypond should follow such conventions even
 in the input.

I disagree.  We don't write whole, half, and quarter notes as O, d and
*| in spite of superficial visual resemblances.  There is always a
mapping involved between musical notation and LilyPond notation.  This
mapping should be straightforward and predictable: users should have a
good chance, however flimsy, to guess how a certain musical construct
will map to LilyPond.  If the LilyPond language is one amorphous mass of
graphs loosely picked based on visual similarity, this is quite less
likely than if the LilyPond language is composed of a finite set of
recognizable, consistent, and reasonably expressive elements.

It is _exactly_ because I am thinking of the user that I don't want to
open a new bag of syntax for every command.  With the (somewhat
positively acclaimed) proposal of letting standalone durations work for
expressing a note pitch repeat, 4:16 is already a quarter note with
tremolo repeat.  Now people want it to be a fraction as well, but only
when used as an argument to \tuplet.

A pair of numbers used for expressing a positive ratio _not_ in shortest
terms is an idiom expressed as 3/4 in LilyPond.  We even have a
fraction? predicate for this idiom, and we have a consistent input
syntax across all modes, to the degree where in ly/engraver-init.ly
you'll find lines like

  timeSignatureFraction = 4/4

Now where is the point in making a single command deviate from that
convention, data structure, input syntax and general support inside of
LilyPond?  How does this make LilyPond easier to comprehend?

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread David Kastrup
Werner LEMBERG w...@gnu.org writes:

 We are talking about writing \tuplet 3:2 { ... } instead of \tuplet
 3/2 { ... } here.  Whether tuplets are central or not, this
 single-character difference is purely cosmetic, and it is
 well-known that obsessive-compulsive cosmetic surgery is not
 exactly guaranteed to maximize the obtained output of beauty.
 
 Uh, it /sounds like/ you're suggesting that Werner has
 obsessive-compulsive disorder.

 No, it doesn't.  Just think of who is going to do the surgery :-)

 Regarding the cosmetics, I think we should always think of the user:
 It is a matter of fact that triplets are either marked with a single
 digit, or with a ratio like `4:3'.  I think it is not too far
 stretched to expect that lilypond should follow such conventions even
 in the input.

If you want a version working _without_ surgery, let \tuplet
_alternatively_ accept a _quoted_ _string_ 4:3 as argument.  \tuplet
will then need to parse this string itself.  If you want to be cute,
override the printing method for tuplet numbers to show 4:3 in this
case.

However, forcing a certain form of input representation for a certain
form of output is a nuisance for programmatically generated music.

I'd rather recommend using something separate like
\tupletStyle 3:2, \tupletStyle 3, \tupletStyle .

I have _no_ problem with : in _this_ context since it now does not
represent a musical/mathematical concept but indeed a graphical
representation.  In fact, I would _protest_ against using
\tupletStyle 3/2 
for creating a 3:2 tuplet number.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread Werner LEMBERG
 It is a matter of fact that triplets are either marked with a
 single digit, or with a ratio like `4:3'.  I think it is not too
 far stretched to expect that lilypond should follow such
 conventions even in the input.
 
 I disagree.  [...]

Good arguments, David!

 Now where is the point in making a single command deviate from that
 convention, data structure, input syntax and general support inside
 of LilyPond?  How does this make LilyPond easier to comprehend?

Playing the advocatus diaboli: I wouldn't mind if we say

  \time 3:4

At least in Germany and Austria a division gets indicated by `3:4' or
`3/4'.  But of course `:' is already in use for tremolos...


   Werner

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread Werner LEMBERG

 I'd rather recommend using something separate like
 \tupletStyle 3:2, \tupletStyle 3, \tupletStyle .

This is an excellent idea.


Werner

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread David Kastrup
Werner LEMBERG w...@gnu.org writes:

 It is a matter of fact that triplets are either marked with a
 single digit, or with a ratio like `4:3'.  I think it is not too
 far stretched to expect that lilypond should follow such
 conventions even in the input.
 
 I disagree.  [...]

 Good arguments, David!

 Now where is the point in making a single command deviate from that
 convention, data structure, input syntax and general support inside
 of LilyPond?  How does this make LilyPond easier to comprehend?

 Playing the advocatus diaboli: I wouldn't mind if we say

   \time 3:4

 At least in Germany and Austria a division gets indicated by `3:4' or
 `3/4'.  But of course `:' is already in use for tremolos...

That's the point.  The current design follows choices taken a long time
ago.  If the choices would have been different, we might have ended up
with 3:4.  I am not opposed to 3:4 based on its visual aesthetics viewed
in isolation, whether we are talking about \time or \tuplet.  And 3:4
would have less potential for confusion with #3/4 (not a number pair or
fraction, but rather a rational number properly embedded into Guile's
numeric stack).

But in the design of LilyPond, a number of design decisions have been
taken forming the language, and side-stepping this design is expensive.
It would probably be less annoying for everybody if I stated flatly
this is impossible in such cases.  But of course, one can always bolt
on a few exceptions and overrides before things start really breaking
apart.

So I start panicking whenever people make really expensive proposals.
Part of the saving grace is, of course, that somebody has to actually
implement things.  But it is not rare that a 90% solution can be hacked
up pretty fast, and then the pressure mounts: somebody else did 90% of
the work, why do you refuse to fill in the missing 10% if you are
convinced that there is something missing?  And don't you dare break any
of the 90% with unrelated work.

And it is not that this sort of thing does not happen.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread Francisco Vila
2012/10/10 Werner LEMBERG w...@gnu.org:

 I'd rather recommend using something separate like
 \tupletStyle 3:2, \tupletStyle 3, \tupletStyle .

 This is an excellent idea.

And it is cheap, it admits a single string argument.

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-10 Thread David Kastrup
Joseph Rushton Wakeling joseph.wakel...@webdrake.net writes:

 On 10/10/2012 09:52 AM, David Kastrup wrote:
 However, forcing a certain form of input representation for a certain
 form of output is a nuisance for programmatically generated music.

 I'd rather recommend using something separate like
 \tupletStyle 3:2, \tupletStyle 3, \tupletStyle .

 That's fair enough, but I'm still inclined to think that whatever the
 display style used, there may be some value in allowing tuplets to be
 entered not just as ratios of numbers, but as ratios of musical
 durations: e.g. {8*7}/{4*3}, or {16*6}/{8.~8}.

For that kind of special application, a specially and separately named
tuplet command taking several durations as argument would be appropriate
rather than trying to cram everything into the standard command.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Keith OHara

Martin Tarenskeen m.tarenskeen at zonnet.nl writes:


I am not in favour of allowing different commands \times 2/3 and \tuplet3/2 to 
do the same job. My voice would go to: just keep \times x/y the wayit is. I 
can't see what makes 3/2 easier than 2/3. And having the choiceof two commands 
doing the same job with a slightly different syntax onlymakes things more 
confusing for me.



Currently, everyone who thinks of a triplet as a 3:2 ratio, 3 notes in the 
usual time for 2, suffers similar confusion when trying to remember \times 2/3. 
 Triplets are usually written with a simple 3, but 4-note-tuplets are often 
designated 4:3 for clarity, while LilyPond requires the reversed fraction in 
\times 3/4 {}

The likely outcome would be to document only \tuplet 3/2 (or \tuplet3 or 
\triplet depending on what we choose) and have convert-ly change \times x/y to 
\tuplet y/x, but let LilyPond accept \times x/y from users who have developed 
the habit.  Then there is only one syntax in the documentation.

If we can make \tuplet also easier to use, it might quickly become the only 
syntax in use.
I like the idea of specifying a set of triplets, each lasting the time of a 
quarter note, as:
 r4 \triplet 4 {e8\( fis cis e b, cis gis, b, fis, |
 gis,8 e, gis,} dis,2 cis,4


tuplet.ly
Description: Binary data
___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Francisco Vila
2012/10/9 Keith OHara k-ohara5...@oco.net:
 Currently, everyone who thinks of a triplet as a 3:2 ratio, 3 notes in the
 usual time for 2, suffers similar confusion when trying to remember \times
 2/3.  Triplets are usually written with a simple 3, but 4-note-tuplets are
 often designated 4:3 for clarity, while LilyPond requires the reversed
 fraction in \times 3/4 {}

Here come Spanish students again.
I can think in \times fraction {} as a mathematical expression and
it has sense, because times means multiply, but I have observed that
newcomers hear about a triplet has to be writen as 2/3 and the times
part becomes less relevant than the fraction part. They only think
times as being time plus an 's' and that the fraction has to be
reversed.

So, \tuplet y/x with the exact meaning of \times x/y is less confusing
because it's not times vs time anymore, and the straightforward
fraction is just music without the maths. So, I predict a widespread
adoption.

-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Keith OHara k-ohara5...@oco.net writes:

 duplet =
 #(define-music-function (parser location d music) 
   ((ly:duration? #f) ly:music? )
   (if d
   #{\tuplet 2 $d $music #}
   #{\tuplet 2 $music #} ))

Just a note here: this can be done quite more concisely by writing
duplet =
#(define-music-function (parser location d music)
  ((ly:duration? *unspecified*) ly:music?)
  #{ \tuplet 2 $d #music #})

I prefer using #music here since it preserves a 1:1 relation between
identifier and function argument (and saves a copying), while the whole
point of $d is to _not_ preserve a 1:1 relation, making $*unspecified*
disappear without a trace as opposed to what #*unspecified* would do.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Martin Tarenskeen m.tarensk...@zonnet.nl writes:

 On Mon, 8 Oct 2012, Trevor Daniels wrote:


 David Kastrup wrote Monday, October 08, 2012 10:45 PM


 Thomas Morley thomasmorle...@googlemail.com writes:

 [...]
 So, i believe that LilyPond shouldn't always follow her users'
 intuition, even if they are professional musicians.  In this case, i
 think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
 of 2), because it corresponds to mathematical ratio, and is similar to
 scaling durations.

 +1

 -1 from me for this one.  We have \times for that already and I can't
 count the times it took me to get the fraction right.  And with the name
 \times there is at least the mnemonic of the name itself.

 I am not in favour of allowing different commands \times 2/3 and
 \tuplet 3/2 to do the same job.

Why?  Nobody forces you to use a command you don't like.

 My voice would go to: just keep \times x/y the way it is.

The proposal was not about changing \times.

 I can't see what makes 3/2 easier than 2/3.

3 triplets on the time of 2 normal notes.  That concept is common enough
that one writes 3 (or even 3:2) in order to mark tuplets, not 2/3.  What
is 2/3 supposed to mean?  Each note will take up 2/3 of its nominal
time, making the total phrase's total time, linearly distributed, a
ratio of 2/3 of its nominal time -- that's a mathematician's
definition, and it is defective anyhow since it fails to explain the
difference between \times 2/3 and \times 4/6.

\tuplet 6/4 means getting 6 tuplets where 4 notes would be normally.
Now give me a definition of \times 4/6 that is sufficient to
differentiate it meaningfully from \times 2/3

 And having the choice of two commands doing the same job with a
 slightly different syntax only makes things more confusing for me.

Then take the choice once and ignore the existence of the other command
for the rest of your life.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Trevor Daniels

Graham Percival wrote Tuesday, October 09, 2012 12:12 AM


 On Mon, Oct 08, 2012 at 11:49:39PM +0100, Trevor Daniels wrote:
 
 David Kastrup wrote Monday, October 08, 2012 10:45 PM
 
  Thomas Morley thomasmorle...@googlemail.com writes:
  
  In this case, i
  think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
  of 2), because it corresponds to mathematical ratio, and is similar to
  scaling durations.
 
  -1 from me for this one.  We have \times for that already and I can't
  count the times it took me to get the fraction right.  And with the name
  \times there is at least the mnemonic of the name itself.
 
 Absolutely!  Inverting the fraction for \tuplet was the original reason
 for inventing it, IIRC.
 
 Woah, really?  I thought the whole point was to avoid the
 confusion between \time and \times.  

Yes, you're right.  The original suggestion was by Werner, here:
http://article.gmane.org/gmane.comp.gnu.lilypond.devel/7989

 I think it would be
 extremely confusing for \tuplet x/y to mean the same thing as
 \times y/x.

Inverting the fraction so it corresponded to the normal notation
came later from Francisco, referenced here:
http://article.gmane.org/gmane.comp.gnu.lilypond.devel/14554
which makes the point that \times implies multiplication but
\tuplet does not, so the more logical ordering would be better.

Trevor
___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
David Kastrup d...@gnu.org writes:

 Graham Percival gra...@percival-music.ca writes:

 On Mon, Oct 08, 2012 at 11:49:39PM +0100, Trevor Daniels wrote:
 
 David Kastrup wrote Monday, October 08, 2012 10:45 PM
 
  Thomas Morley thomasmorle...@googlemail.com writes:
  
  In this case, i
  think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
  of 2), because it corresponds to mathematical ratio, and is similar to
  scaling durations.
 
  -1 from me for this one.  We have \times for that already and I can't
  count the times it took me to get the fraction right.  And with the name
  \times there is at least the mnemonic of the name itself.
 
 Absolutely!  Inverting the fraction for \tuplet was the original reason
 for inventing it, IIRC.

 Woah, really?  I thought the whole point was to avoid the
 confusion between \time and \times.

 Both the whole point impressions are mistaken if you look at the
 original proposal in
 URL:http://permalink.gmane.org/gmane.comp.gnu.lilypond.devel/50803.
 It was one, deliberately separate point to discuss.  It was discussed,
 and a consensus was reached.

Obviously, a consensus was reached was inaccurate since at at the time
of writing, Janek had already voted against this.  I actually had to
reread his take on this since the detailed argument he makes _strongly_
argues in favor of \tuplet 3/2, but his conclusion is definitely quite
opposite.

Since then, also Martin has spoken up to express his dislike of a
\tuplet behaving substantially different from \times.  I disagree with
this take since substituting a new command should also give us a chance
to reconsider the best behavior without being bogged down by history.  A
new command name is the best chance of reevaluating the best semantics
for users we get.  We should not lightly waste it.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Francisco Vila paconet@gmail.com writes:

 2012/10/9 Keith OHara k-ohara5...@oco.net:
 Currently, everyone who thinks of a triplet as a 3:2 ratio, 3 notes in the
 usual time for 2, suffers similar confusion when trying to remember \times
 2/3.  Triplets are usually written with a simple 3, but 4-note-tuplets are
 often designated 4:3 for clarity, while LilyPond requires the reversed
 fraction in \times 3/4 {}

 Here come Spanish students again.
 I can think in \times fraction {} as a mathematical expression and
 it has sense, because times means multiply,

How does a mathematician explain the difference between \times 2/3 and
\times 4/6 ?

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Martin Tarenskeen



On Mon, 8 Oct 2012, Keith OHara wrote:


Martin Tarenskeen m.tarenskeen at zonnet.nl writes:

I am not in favour of allowing different commands \times 2/3 and \tuplet3/2 
to do the same job. My voice would go to: just keep \times x/y the wayit 
is. I can't see what makes 3/2 easier than 2/3. And having the choiceof two 
commands doing the same job with a slightly different syntax onlymakes 
things more confusing for me.




Currently, everyone who thinks of a triplet as a 3:2 ratio, 3 notes in the 
usual time for 2, suffers similar confusion when trying to remember \times 
2/3.  Triplets are usually written with a simple 3, but 4-note-tuplets are 
often designated 4:3 for clarity, while LilyPond requires the reversed 
fraction in \times 3/4 {}


The likely outcome would be to document only \tuplet 3/2 (or \tuplet3 or 
\triplet depending on what we choose) and have convert-ly change \times x/y 
to \tuplet y/x, but let LilyPond accept \times x/y from users who have 
developed the habit.  Then there is only one syntax in the documentation.


OK. You convinced me.

--

MT


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Francisco Vila
2012/10/9 David Kastrup d...@gnu.org:
 Francisco Vila paconet@gmail.com writes:

 2012/10/9 Keith OHara k-ohara5...@oco.net:
 Currently, everyone who thinks of a triplet as a 3:2 ratio, 3 notes in the
 usual time for 2, suffers similar confusion when trying to remember \times
 2/3.  Triplets are usually written with a simple 3, but 4-note-tuplets are
 often designated 4:3 for clarity, while LilyPond requires the reversed
 fraction in \times 3/4 {}

 Here come Spanish students again.
 I can think in \times fraction {} as a mathematical expression and
 it has sense, because times means multiply,

 How does a mathematician explain the difference between \times 2/3 and
 \times 4/6 ?

There is no difference BUT tuplets have a printed number, and in
lilypond this number is taken from the denominator for your
convenience.

When I learned how to read music, triplets were taught to me as
always shrinking groups and you see a 3 but there is an implicit
2 so we have 3:2. Only the numerator is printed by convention.

Thus, if you write

  \times 2/3 { b16 b b b b b }

or

  \times 4/6 { b8 b b }

this is mathematically perfect but the number you are asking to be
printed is a confusing 3 and a confusing 6 respectively.
-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Benkő Pál
2012/10/9 Francisco Vila paconet@gmail.com:
 When I learned how to read music, triplets were taught to me as
 always shrinking groups and you see a 3 but there is an implicit
 2 so we have 3:2. Only the numerator is printed by convention.

 Thus, if you write

   \times 2/3 { b16 b b b b b }

 or

   \times 4/6 { b8 b b }

 this is mathematically perfect but the number you are asking to be
 printed is a confusing 3 and a confusing 6 respectively.

the first is not confusing: it makes sure to read
b16[ b] b[ b] b[ b]
instead of
b16[ b b] b[ b b].

I think I've actually seen such a triplet in Ligeti's Requiem;
will look tonight.

p

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Francisco Vila paconet@gmail.com writes:

 2012/10/9 David Kastrup d...@gnu.org:
 Francisco Vila paconet@gmail.com writes:

 2012/10/9 Keith OHara k-ohara5...@oco.net:
 Currently, everyone who thinks of a triplet as a 3:2 ratio, 3 notes in the
 usual time for 2, suffers similar confusion when trying to remember \times
 2/3.  Triplets are usually written with a simple 3, but 4-note-tuplets are
 often designated 4:3 for clarity, while LilyPond requires the reversed
 fraction in \times 3/4 {}

 Here come Spanish students again.
 I can think in \times fraction {} as a mathematical expression and
 it has sense, because times means multiply,

 How does a mathematician explain the difference between \times 2/3 and
 \times 4/6 ?

 There is no difference BUT tuplets have a printed number, and in
 lilypond this number is taken from the denominator for your
 convenience.

 When I learned how to read music, triplets were taught to me as
 always shrinking groups and you see a 3 but there is an implicit
 2 so we have 3:2. Only the numerator is printed by convention.

 Thus, if you write

   \times 2/3 { b16 b b b b b }

 or

   \times 4/6 { b8 b b }

 this is mathematically perfect but the number you are asking to be
 printed is a confusing 3 and a confusing 6 respectively.

The concept used for printing/grouping tuplets is different than the
concept used for scaling the time.  That's what makes \times such a
confusing interface.

The pure scaling alone is available as \scaleDurations.  I have no beef
with it using 2/3 as input, and I would have trouble coming up with a
justification of using 3/2 here, actually seeing little point in doing
so.  One could use something like \compressMusic 3/2 but I don't see
much of a motivation for that.

But with tuplets, the concept is not really scale duration by x but
rather n to m notes including all the necessary visual changes, and
\times, including its argument style, expresses this concept poorly.

I don't really think that people consider \times and \scaleDurations as
closely related (and their naming choice is also totally different), so
I don't think that there will be much of an opportunity confusing the
behavior of \scaleDurations with \tuplet.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Benkő Pál
2012/10/9 David Kastrup d...@gnu.org:
 The concept used for printing/grouping tuplets is different than the
 concept used for scaling the time.  That's what makes \times such a
 confusing interface.

 The pure scaling alone is available as \scaleDurations.  I have no beef
 with it using 2/3 as input, and I would have trouble coming up with a
 justification of using 3/2 here, actually seeing little point in doing
 so.  One could use something like \compressMusic 3/2 but I don't see
 much of a motivation for that.

 But with tuplets, the concept is not really scale duration by x but
 rather n to m notes including all the necessary visual changes, and
 \times, including its argument style, expresses this concept poorly.

 I don't really think that people consider \times and \scaleDurations as
 closely related (and their naming choice is also totally different), so
 I don't think that there will be much of an opportunity confusing the
 behavior of \scaleDurations with \tuplet.

I, for one, consider \times a visually enhanced variant of \scaleDurations.
regardless how it's written, to me both mean metric change (and metric
is represented poorly in graphic anyway).

p

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Francisco Vila
2012/10/9 Benkő Pál benko@gmail.com:
 2012/10/9 Francisco Vila paconet@gmail.com:
 When I learned how to read music, triplets were taught to me as
 always shrinking groups and you see a 3 but there is an implicit
 2 so we have 3:2. Only the numerator is printed by convention.

 Thus, if you write

   \times 2/3 { b16 b b b b b }

 or

   \times 4/6 { b8 b b }

 this is mathematically perfect but the number you are asking to be
 printed is a confusing 3 and a confusing 6 respectively.

 the first is not confusing: it makes sure to read
 b16[ b] b[ b] b[ b]

Yes, but I think it is more common to print a 6 here with the same meaning.

 instead of
 b16[ b b] b[ b b].


-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Benkő Pál benko@gmail.com writes:

 2012/10/9 David Kastrup d...@gnu.org:
 The concept used for printing/grouping tuplets is different than the
 concept used for scaling the time.  That's what makes \times such a
 confusing interface.

 The pure scaling alone is available as \scaleDurations.  I have no beef
 with it using 2/3 as input, and I would have trouble coming up with a
 justification of using 3/2 here, actually seeing little point in doing
 so.  One could use something like \compressMusic 3/2 but I don't see
 much of a motivation for that.

 But with tuplets, the concept is not really scale duration by x but
 rather n to m notes including all the necessary visual changes, and
 \times, including its argument style, expresses this concept poorly.

 I don't really think that people consider \times and \scaleDurations as
 closely related (and their naming choice is also totally different), so
 I don't think that there will be much of an opportunity confusing the
 behavior of \scaleDurations with \tuplet.

 I, for one, consider \times a visually enhanced variant of \scaleDurations.
 regardless how it's written, to me both mean metric change (and metric
 is represented poorly in graphic anyway).

Do you feel that the changed fraction gender of \tuplet would be a
potential source of confusion for you in the light of your view of
\scaleDurations?

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Reinhold Kainhofer
On 2012-10-09 11:14, Francisco Vila wrote: 2012/10/9 Benkő Pál 
benko@gmail.com:

 2012/10/9 Francisco Vila paconet@gmail.com:
 When I learned how to read music, triplets were taught to me as
 always shrinking groups and you see a 3 but there is an implicit
 2 so we have 3:2. Only the numerator is printed by convention.

 Thus, if you write

\times 2/3 { b16 b b b b b }

 or

\times 4/6 { b8 b b }

 this is mathematically perfect but the number you are asking to be
 printed is a confusing 3 and a confusing 6 respectively.

 the first is not confusing:

I think the point here was not that the tuplet notation on paper is 
confusing per se. Actually, both are VERY common (the 6:4 tuplets appear 
e.g. in Schubert's Stabat Mater, in several pieces by Preindl or Eybler, 
etc.)

What is confusing is that 3 is printed, when you actually write 2/3.
Also, Gould explains tuplets m:n as m in the time of n and calls m:n 
(i.e. 3:2) the tuplet ratio...



 it makes sure to read
 b16[ b] b[ b] b[ b]

 Yes, but I think it is more common to print a 6 here with the same
 meaning.

Not that I know.

A triplet (i.e. 3:2) means that there are three beats in the tuplet, the 
first might get a slight accent, while a sextuplet means there are two 
groups of three notes.

Also compare Gould, p. 213, regarding the subdivision of beams:

A triplet is always a tripartite division, whereas a sextuplet is two 
groups each of three notes, a bipartite division.


Cheers,
Reinhold

--
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://www.kainhofer.com
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * Edition Kainhofer, Music Publisher, http://www.edition-kainhofer.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Benkő Pál
2012/10/9 David Kastrup d...@gnu.org:
 Benkő Pál benko@gmail.com writes:

 2012/10/9 David Kastrup d...@gnu.org:
 I don't really think that people consider \times and \scaleDurations as
 closely related (and their naming choice is also totally different), so
 I don't think that there will be much of an opportunity confusing the
 behavior of \scaleDurations with \tuplet.

 I, for one, consider \times a visually enhanced variant of \scaleDurations.
 regardless how it's written, to me both mean metric change (and metric
 is represented poorly in graphic anyway).

 Do you feel that the changed fraction gender of \tuplet would be a
 potential source of confusion for you in the light of your view of
 \scaleDurations?

definitely not, I'm fine with the \tuplet proposal, it mimics better the
engraved representation.  BTW do we still have \compressMusic or
only \scaleDurations?

p

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Benkő Pál benko@gmail.com writes:

 2012/10/9 David Kastrup d...@gnu.org:
 Benkő Pál benko@gmail.com writes:

 2012/10/9 David Kastrup d...@gnu.org:
 I don't really think that people consider \times and \scaleDurations as
 closely related (and their naming choice is also totally different), so
 I don't think that there will be much of an opportunity confusing the
 behavior of \scaleDurations with \tuplet.

 I, for one, consider \times a visually enhanced variant of \scaleDurations.
 regardless how it's written, to me both mean metric change (and metric
 is represented poorly in graphic anyway).

 Do you feel that the changed fraction gender of \tuplet would be a
 potential source of confusion for you in the light of your view of
 \scaleDurations?

 definitely not, I'm fine with the \tuplet proposal, it mimics better the
 engraved representation.  BTW do we still have \compressMusic or
 only \scaleDurations?

Huh.

@newsItem
@subsubheading LilyPond 2.11.48 released.  @emph{June 9, 2008}

LilyPond 2.11.48 is out.  This release fixes a few bugs, and
@code{\compressMusic} has been renamed
to @code{\scaleDurations}.
@*

I was not actually aware that there ever _was_ a \compressMusic, and it
would appear that it had the _same_ fraction interpretation as
\scaleDurations.  Probably that was the reason for renaming it.

Reintroducing it with inversed meaning might not be the hottest idea,
then.  The underlying Scheme primitive, by the way, is called
ly:music-compress:

LY_DEFINE (ly_music_compress, ly:music-compress,
   2, 0, 0, (SCM m, SCM factor),
   Compress music object@tie{}@var{m} by moment @var{factor}.)

It ultimately calls

Duration::compressed (Rational m) const
{
  Duration d (*this);
  d.factor_ *= m;
  return d;
}

so we have this misnomer of compress for what is actually scale
(namely making things longer for factors  1) throughout the whole
Scheme API and C++ layer.

It's just the user interface that has apparently been relieved of this
embarrassing name choice.  Reintroducing it with inversed meaning would
make a bit of isolated sense in the user interface, but would be
horribly confusing in light of all the other layers employing different
terminology.

So if we want to introduce a scale Durations by 1/x user level
function at some point of time, \compressMusic seems to be an awfully
bad naming choice for that, for historical as well as continuing
reasons.

I was not aware of that.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Janek Warchoł
Hi,

wow, many more emails arrived!  Let me send my thoughts written in the
meantime, and go back offline for a few hours.

i've found a reason why i could support reversed tuplet ratio: if we
decide to allow arbitrary integer durations (so that a3 would mean a
third of the whole note), it would make more sense to have { a3 b6 }
equivalent to \tuplet 3/2 { a2 b4 } rather than have it equivalent to
\tuplet 2/3 { a2 b4 }.  In other words, in LilyPond we express
duration using the /denominator/ of the fraction, so it makes sense to
multiply duration 2 (half note) by 3/2 to get duration 3 (a triplet).
Do you see what i mean?

However, if we reverse the argument in \tuplet, we definitely should
deprecate \times.  Having both \times 2/3 and \tuplet 3/2 for
specifying triplets would be *very* confusing.

I agree that specifying not just x/y ratio but also x/y of what? is
a good idea.  I don't have any idea on how the actual syntax might
look like, though.

As for transposing clefs, i play guitar a bit myself, and i have once
typeset a piece using both G and G_8 clefs.  Maybe it was a bad idea,
but for me it was perfectly fine.

On Tue, Oct 9, 2012 at 1:16 AM, Joseph Rushton Wakeling
joseph.wakel...@webdrake.net wrote:
 If you _did_ insist on the distinction between those clefs being important,
 it would be very problematic because then as a guitarist (or piccolist, or
 bass player, or conductor) you'd have to spend lots of time worrying about
 whether the omission of that 8 on the clef actually meant something or was
 just a typo.  Whereas as things are, you can just ignore it.

 Now think about extending that to other transposing instruments.  Should a
 bass clarinet be notated in \treble sounding a 12th below what is written,
 or in \treble_8 sounding a 2nd below?  Isn't the important thing (as player
 or conductor) that you never have to worry about it?

It seems that our opinions on this subject are totally opposite.
While i definitely agree that the important thing is that performers
don't have to worry about this issue, in my opinion the *only* way to
ensure this is to state clef transpositions explicitely.  After all,
it doesn't cost you anything to write them.
For me, what we currently have is a holly mess.  There are some areas
where ambiguity can be your goal, but i don't see how it could be
here.  In my opinion it is *infinitely* better to write down the
information than to leave it to the performer to guess it based on
tradition.
For example, despite the fact that i'm an amateur musician (guitar 
voice), i had learned note names quickly.  However, for *many years* i
had no idea that some instruments are transposed.  Had i tried to play
a transposed instrument, i would play exactly what was written.  When
i learned that some instruments are transposed *and that the
transposition isn't marked in the notation*, i felt it was outrageous.
 I still believe it was a foolish idea to start notating transposing
instruments in this way, i.e. without any indication next to the clef
(no idea who started it, though :P).
For example, the horn transposition can be either a fourth or a fifth.
 For me this is nonsense: you want to play from some old score, but
you have to ask a musicologist to be sure what the notes actually are
:(

I hope that this email hadn't become too sarcastic or disparaging :/


On Tue, Oct 9, 2012 at 1:16 AM, Joseph Rushton Wakeling
joseph.wakel...@webdrake.net wrote:
 Don't know about you, but I find they always seem to be most tempting to
 write whenever I have something else really important (work, study,
 planning, big life change ...) upcoming that I should really be
 concentrating on :-P

true :P  but my conscience is clean this time, as i wrote this email
when commuting, without internet access :)

cheers,
Janek

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Janek Warchoł janek.lilyp...@gmail.com writes:

 wow, many more emails arrived!  Let me send my thoughts written in the
 meantime, and go back offline for a few hours.

 i've found a reason why i could support reversed tuplet ratio: if we
 decide to allow arbitrary integer durations (so that a3 would mean a
 third of the whole note), it would make more sense to have { a3 b6 }
 equivalent to \tuplet 3/2 { a2 b4 } rather than have it equivalent to
 \tuplet 2/3 { a2 b4 }.  In other words, in LilyPond we express
 duration using the /denominator/ of the fraction, so it makes sense to
 multiply duration 2 (half note) by 3/2 to get duration 3 (a triplet).
 Do you see what i mean?

With the same kind of logic, s2 + s2 should be s4, so I hope this reason
will not remain the only one you can find.

 However, if we reverse the argument in \tuplet, we definitely should
 deprecate \times.  Having both \times 2/3 and \tuplet 3/2 for
 specifying triplets would be *very* confusing.

I agree that using them interchangeably in the documentation would not
be helpful.  I see no reason to _remove_ \times, however.  It would
likely be more than enough to have its documentation string point out
the existence of \tuplet.  Using a convert-ly rule for a blanket
conversion \times-\tuplet would be something I would consider
appropriate.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Graham Percival
On Tue, Oct 09, 2012 at 09:45:09AM +0200, Francisco Vila wrote:
 So, \tuplet y/x with the exact meaning of \times x/y is less confusing
 because it's not times vs time anymore, and the straightforward
 fraction is just music without the maths. So, I predict a widespread
 adoption.

Do we really need to use the same fraction notation, though?  I
mean, in music we see 3:2 (if people are being pedantic).  I'd be
much happier with
  \tuplet 3:2 { }
meaning the same thing as
  \times 2/3 { }

- Graham

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Martin Tarenskeen



On Tue, 9 Oct 2012, Graham Percival wrote:


On Tue, Oct 09, 2012 at 09:45:09AM +0200, Francisco Vila wrote:

So, \tuplet y/x with the exact meaning of \times x/y is less confusing
because it's not times vs time anymore, and the straightforward
fraction is just music without the maths. So, I predict a widespread
adoption.


Do we really need to use the same fraction notation, though?  I
mean, in music we see 3:2 (if people are being pedantic).  I'd be
much happier with
 \tuplet 3:2 { }
meaning the same thing as
 \times 2/3 { }


I think I like this idea.

--

MT

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Graham Percival gra...@percival-music.ca writes:

 On Tue, Oct 09, 2012 at 09:45:09AM +0200, Francisco Vila wrote:
 So, \tuplet y/x with the exact meaning of \times x/y is less confusing
 because it's not times vs time anymore, and the straightforward
 fraction is just music without the maths. So, I predict a widespread
 adoption.

 Do we really need to use the same fraction notation, though?

You mean, like 3/4 meaning 3 notes to 4 parts of a measure?

 I mean, in music we see 3:2 (if people are being pedantic).  I'd be
 much happier with \tuplet 3:2 { } meaning the same thing as \times 2/3
 { }

3/2 is a FRACTION, which is a lexical item available as a music function
argument.  The proposed \tuplet implementations were presented as Scheme
code that could just be used in a document without recompilation.

In contrast, : is being used for chord and tremolo notation.  It has no
relation to music function arguments.  The price for using it would be
making \tuplet a reserved word specially treated in the parser and
dealing with the interference of : with its other meanings in the
parser, and having the command hardwired and not user-serviceable and
not documented as a music function.

That's not a reasonable price to pay for a one-off command.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Werner LEMBERG
 much happier with
  \tuplet 3:2 { }
 meaning the same thing as
  \times 2/3 { }
 
 I think I like this idea.

Me too.  However, this requires surgery in the parser, so I think this
feature gets postponed until someone (hehe, David :-) has time to
analyze possible side effects.


Werner

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Janek Warchoł
On Tue, Oct 9, 2012 at 5:36 PM, David Kastrup d...@gnu.org wrote:
 Janek Warchoł janek.lilyp...@gmail.com writes:
 i've found a reason why i could support reversed tuplet ratio: if we
 decide to allow arbitrary integer durations (so that a3 would mean a
 third of the whole note), it would make more sense to have { a3 b6 }
 equivalent to \tuplet 3/2 { a2 b4 } rather than have it equivalent to
 \tuplet 2/3 { a2 b4 }.  In other words, in LilyPond we express
 duration using the /denominator/ of the fraction, so it makes sense to
 multiply duration 2 (half note) by 3/2 to get duration 3 (a triplet).
 Do you see what i mean?

 With the same kind of logic, s2 + s2 should be s4, so I hope this reason
 will not remain the only one you can find.

math joke
but i didn't consider Durations to be a field.  I was treating it just
like an abelian group, without addition. :P
/math joke

btw, s2 + s2 = s1*1/2 + s1*1/2 = s1 * (1/2 + 1/2) = s1 as we expect
(note the transition from LilyPondDuration to fractions of whole
notes), and \tuplet 3/2 { s2 } = s1*1/(2 * 3/2) = s1*1/3 = s3
:)

 However, if we reverse the argument in \tuplet, we definitely should
 deprecate \times.  Having both \times 2/3 and \tuplet 3/2 for
 specifying triplets would be *very* confusing.

 I agree that using them interchangeably in the documentation would not
 be helpful.  I see no reason to _remove_ \times, however.  It would
 likely be more than enough to have its documentation string point out
 the existence of \tuplet.  Using a convert-ly rule for a blanket
 conversion \times-\tuplet would be something I would consider
 appropriate.

Since we have \scaleDurations, i don't see any compelling reason to
keep \times.  But i don't insist; your suggestion above is ok.

As for Graham's question about \tuplet 3:2, i think that the
difficulties David outlined far outweigh the user-friendliness
gained.

cheers,
Janek

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Werner LEMBERG

 In contrast, : is being used for chord and tremolo notation.  It has
 no relation to music function arguments.  The price for using it
 would be making \tuplet a reserved word specially treated in the
 parser and dealing with the interference of : with its other
 meanings in the parser, and having the command hardwired and not
 user-serviceable and not documented as a music function.
 
 That's not a reasonable price to pay for a one-off command.

I'm not sure about the validity of your conclusion.  Writing tuplets
is such a central element of inputting music that a special treatment
is probably justified, even at the cost of hardwiring.  However, this
is nothing I suggest for immediate implementation; as mentioned in
another mail, I think this can be safely postponed.


 Werner

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread Janek Warchoł
On Tue, Oct 9, 2012 at 11:30 PM, Werner LEMBERG w...@gnu.org wrote:
 much happier with
  \tuplet 3:2 { }
 meaning the same thing as
  \times 2/3 { }

 I think I like this idea.

 Me too.  However, this requires surgery in the parser, so I think this
 feature gets postponed until someone (hehe, David :-) has time to
 analyze possible side effects.

He already did:
http://lists.gnu.org/archive/html/lilypond-devel/2012-10/msg00333.html

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-09 Thread David Kastrup
Werner LEMBERG w...@gnu.org writes:

 In contrast, : is being used for chord and tremolo notation.  It has
 no relation to music function arguments.  The price for using it
 would be making \tuplet a reserved word specially treated in the
 parser and dealing with the interference of : with its other
 meanings in the parser, and having the command hardwired and not
 user-serviceable and not documented as a music function.
 
 That's not a reasonable price to pay for a one-off command.

 I'm not sure about the validity of your conclusion.  Writing tuplets
 is such a central element of inputting music that a special treatment
 is probably justified, even at the cost of hardwiring.

We are talking about writing \tuplet 3:2 { ... } instead of \tuplet 3/2
{ ... } here.  Whether tuplets are central or not, this single-character
difference is purely cosmetic, and it is well-known that
obsessive-compulsive cosmetic surgery is not exactly guaranteed to
maximize the obtained output of beauty.

In the end, LilyPond needs to fit together like a fugue; local
beautification without consideration of the whole is painting yourself
into corners that become increasingly harder to get out of again.

 However, this is nothing I suggest for immediate implementation; as
 mentioned in another mail, I think this can be safely postponed.

Implementing syntax not in harmony with the rest of the syntax is not
really desirable, so safely postponed may deliver a wrong message as
it implies an eventual delivery and may keep people from thinking how to
make best use of the existing framework.

This paragraph was supposed to contain some more pompous platitudes, but
I need to sleep right now.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Clefs and transposition [was: Re: [proposal] easy triplets and tuplets - Draft 3]

2012-10-09 Thread Joseph Rushton Wakeling

On 10/09/2012 05:23 PM, Janek Warchoł wrote:

As for transposing clefs, i play guitar a bit myself, and i have once
typeset a piece using both G and G_8 clefs.  Maybe it was a bad idea,
but for me it was perfectly fine.


Yes, definitely a bad idea.  Use 8va.  brackets instead when you want to 
send everything up an octave like that.  It was fine for _you_ because you wrote 
it and knew what you wanted anyway, but it would have probably been confusing 
for anyone else who had to read it, at least at initial glance.


Anyway, _most_ of the time you shouldn't need to do any such octave shifts -- 
it's only at the very extreme upper end of the instrumental register (and 
sometimes lower, e.g. on piano) that you would bother.



It seems that our opinions on this subject are totally opposite.
While i definitely agree that the important thing is that performers
don't have to worry about this issue, in my opinion the *only* way to
ensure this is to state clef transpositions explicitely.  After all,
it doesn't cost you anything to write them.


No, the only way to do it is to ensure that you have a well-defined standard for 
how music is written for a given instrument, and ensure that composers, 
publishers etc. know these standards and use them.  To a large extent that's 
what happens, but there are grey areas round some edges, usually where you're 
seeing new areas of technique or even new instruments introduced.


Insisting on a strict employment of \treble or \treble_8 is in practice a good 
way to increase the number of grey areas rather than reduce them, because it 
increases the likelihood of multiple different non-uniform practices, and also 
simply of errors -- errors in writing the part, and errors in playing it, 
because \treble and \treble_8 are not visually distinct enough for a musician 
reading the piece in real time.


In any case the player shouldn't have to face the question because as a matter 
of course they should never encounter two clefs an octave apart in the same 
piece -- you change clef to change the _staff_ pitches, not the relative octave.



For me, what we currently have is a holly mess.  There are some areas
where ambiguity can be your goal, but i don't see how it could be
here.  In my opinion it is *infinitely* better to write down the
information than to leave it to the performer to guess it based on
tradition.


It's not just tradition -- there are well-defined notational standards for 
different instruments' notation, particularly for pitch, which you can find in 
any decent orchestration manual.


The problems happen when composers or arrangers don't follow the rules, which 
unfortunately happens more frequently than you'd like, and which to some extent 
is exacerbated by reliance on music notation software (i.e., trusting that the 
computer knows what it's doing rather than understanding and properly 
researching the notational standards).



For example, despite the fact that i'm an amateur musician (guitar 
voice), i had learned note names quickly.  However, for *many years* i
had no idea that some instruments are transposed.  Had i tried to play
a transposed instrument, i would play exactly what was written.  When
i learned that some instruments are transposed *and that the
transposition isn't marked in the notation*, i felt it was outrageous.


But it _is_ usually marked in the notation -- you'll get a part marked for 
Clarinet in B flat or Trumpet in D or whatever, which tells you what the 
transposition is.  Albeit in some modern parts the instrument's transposition is 
so standardized (e.g. alto sax is _always_ in E flat, though historically they 
existed in F and other keys) that it isn't always written, but if you're a 
composer, conductor or arranger it's reasonable to expect you to have read up on 
the standards and to know them by heart.



  I still believe it was a foolish idea to start notating transposing
instruments in this way, i.e. without any indication next to the clef
(no idea who started it, though :P).


You might want to read some of Schoenberg's writings :-)  He made some proposals 
for an alternative staff and clef system designed to better cope with the trend 
towards atonal music.  (Many of the potential ambiguities of transposition 
actually resolve rather simply in a tonal setup.)


I think his ideas probably failed because apart from the weight of lock-in, the 
main purpose of _individual_ instrumental notation is to make the easiest 
possible mapping between what is written on the page and what the player has to 
do.  In the case of brass instruments that mapping basically needs to be common 
to the overtone series of the instrument.  In the case of woodwind instruments, 
the notation needs to be common to the fingering -- whether I'm playing clarinet 
in B flat, A, C or E flat, or bass clarinet, or alto clarinet, or basset horn, 
if I see a written middle C I know to put down the thumb and first 3 fingers of 
my left hand.  I don't have 

Re: Clefs and transposition [was: Re: [proposal] easy triplets and tuplets - Draft 3]

2012-10-09 Thread Joseph Rushton Wakeling

On 10/10/2012 12:08 AM, Joseph Rushton Wakeling wrote:

Yes, definitely a bad idea.  Use 8va.  brackets instead when you want to
send everything up an octave like that.  It was fine for _you_ because you wrote
it and knew what you wanted anyway, but it would have probably been confusing
for anyone else who had to read it, at least at initial glance.

Anyway, _most_ of the time you shouldn't need to do any such octave shifts --
it's only at the very extreme upper end of the instrumental register (and
sometimes lower, e.g. on piano) that you would bother.


All of this (and what follows) seems rather aggressive and blunt on a second 
reading -- wasn't meant to be.  Apologies. :-\


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Joseph Rushton Wakeling

On 10/08/2012 01:03 AM, Reinhold Kainhofer wrote:

Actually, thinking of it, it would actually be quite simple to calculate the
displayed fraction with durations from the given durations and the tuplet
fraction (except that there is no way to distinguish 3:2 and 4:6).

(m*dur1):(n*dur2) = tuplet fraction

can be easily solved as
m/n = (tuplet fraction)*dur2/dur1

and then reduced to minimal m and n. This could then be displayed as
   m{dur1}:n{dur2}


Do you need to reduce to minimal m and n?  If you have m and n as given, then 
you can say, OK, what's the total 'interior' duration of this tuplet divided by 
m, what's the total 'exterior' duration of this tuplet divided by n?


In both cases that should come out as a standard note (1, 2, 4, 8, 16, ... or 
their dotted equivalents).  If we take the simple case, it should be identical 
for both divisions, and you could throw a warning or error if it's not.


That probably covers most use-cases, since I don't think there's really a lot of 
m{dur1}:n{dur2} about in reality; m{dur1}:{dur2}, maybe.



___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Janek Warchoł
Hi,

i had some spare time when commuting, so i've written down a few
thoughts on this topic.

First, we shouldn't mix content and presentation.  I think it's a very
important rule; one of the best things in LilyPond is that she allows
to separate music from its layout.

I think that what Joseph suggested is mostly a matter of layout.
Thus, it shouldn't require any additional user input.
For example, displaying the total duration of the tuplet can be done
in an automated way - i'm sure LilyPond can calculate it.  So, instead
of having an additional optional argument that the user would have to
provide, we should just create some property of TupletNumber (e.g.
display-total-duration) that would print these when set to true.  We
could then go as far as to create a function that would evaluate a
tuplet and set this property to true if the tuplet was complicated
enough.
Similarly, deciding what should be displayed inside the TupletBracket
is another layout decision - it seems doable to define several styles
(e.g. denominator only, ratio with slash, ratio with colon, ratio with
noteheads etc) and choose between them using 'style properrty of the
TupletNumber.
Joseph mentioned scores in which tuplet style changes all the time.  I
think that a proper solution to this problem is to create custom
shortcuts for overriding TupletNumber style - this way you still have
layout separated from score (i.e. one can easily turn these functions
off; the layout decisions aren't hardcoded in the music code itself.


Secondly, there is a general design principle which says that
different things shouldn't be too similar.  Because of that i think
that we shouldn't allow \tuplet {} (without ratio argument) to mean a
triplet - it would be confusing (to say the least).

In my opinion, we need a powerful function that can be used to notate
any conceiveable tuplet - that would be \tuplet x/y {}.  In addition
to this, we may define some shorthands, but it's crucial that they are
distinct from \tuplet x/y.  It should be obvious for everyone,
including all LilyPond beginners right from the start, that \tuplet
x/y is THE way to enter tuplets, and everything else is just a
shorthand.


Finally, another cool thing about LilyPond is that she is logical,
precise and the syntax is fairly unambiguous - *unlike* musical
notation itself.  I remember one user writing something like LilyPond
forces me to write the music in logical and structured manner - if
some notation is particularly difficult to code, i often end up
realizing that it was not a good notation at all.

So, while i'm wholeheartedly supporting intuitive syntax, i also
firmly believe that we shouldn't aim for the most intuitive syntax
possible.  Some intuitions may be wrong, some may lead to
ambiguities.  Please forgive me for saying this, but in my opinion
musicians are somewhat prone to this bad intuitions; some
established music notations are ambiguous for no good reason.  For
example, a lot of guitar music is written in treble clef *without* 8
below the clef.  From my point of view, this is extremely confusing,
and a foolish thing to do.  You gain nothing by omitting the 8 - why
hide the fact that the music is transposed?
In LilyPond, if you use the treble clef without 8, you'll get
literally what you wrote - there will be no silent transposition.  You
have to use the proper (i.e. unambiguous) clef to get what you want
(or you have to use override trickery, but then you know that you're
cheating).  I believe that this quality of LilyPond is very noble.

So, i believe that LilyPond shouldn't always follow her users'
intuition, even if they are professional musicians.  In this case, i
think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
of 2), because it corresponds to mathematical ratio, and is similar to
scaling durations.

Whoah, that was a long email.

cheers,
Janek

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Thomas Morley
2012/10/8 Janek Warchoł janek.lilyp...@gmail.com:
[...]
 Joseph mentioned scores in which tuplet style changes all the time.  I
 think that a proper solution to this problem is to create custom
 shortcuts for overriding TupletNumber style - this way you still have
 layout separated from score (i.e. one can easily turn these functions
 off; the layout decisions aren't hardcoded in the music code itself.

+1

 In my opinion, we need a powerful function that can be used to notate
 any conceiveable tuplet - that would be \tuplet x/y {}.  In addition
 to this, we may define some shorthands, but it's crucial that they are
 distinct from \tuplet x/y.  It should be obvious for everyone,
 including all LilyPond beginners right from the start, that \tuplet
 x/y is THE way to enter tuplets, and everything else is just a
 shorthand.

+1

 For
 example, a lot of guitar music is written in treble clef *without* 8
 below the clef.  From my point of view, this is extremely confusing,
 and a foolish thing to do.  You gain nothing by omitting the 8 - why
 hide the fact that the music is transposed?

Offtopic:
Being a guitarist myself, I'm irritated every time I see this.
Must be laziness of the typesetter.
But once I saw a bigband-part for guitar, notated with changing clefs
between bass and treble.
Well, it was the real treble, no transposition. That it was the real
treble was only understandable from the context.
Aarrgh!

[...]
 So, i believe that LilyPond shouldn't always follow her users'
 intuition, even if they are professional musicians.  In this case, i
 think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
 of 2), because it corresponds to mathematical ratio, and is similar to
 scaling durations.

+1

 Whoah, that was a long email.

:)

 cheers,
 Janek


-Harm

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread David Kastrup
Thomas Morley thomasmorle...@googlemail.com writes:

 [...]
 So, i believe that LilyPond shouldn't always follow her users'
 intuition, even if they are professional musicians.  In this case, i
 think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
 of 2), because it corresponds to mathematical ratio, and is similar to
 scaling durations.

 +1

-1 from me for this one.  We have \times for that already and I can't
count the times it took me to get the fraction right.  And with the name
\times there is at least the mnemonic of the name itself.

When I have a tuplet that is marked 3:2 on the tuplet itself using the
respective tuplet style
\override TupletNumber #'text = #tuplet-number::calc-fraction-text
then it makes no sense at all that I have to enter it as
\tuplet 2/3 { ... } for tuplets that are three to two normal notes.

That's not merely unintuitive, it is (oh goodie, no [talk] tag) plain
absurd.  How can anybody write \tuplet 2/3 is better than \tuplet 3/2
(for 3 notes in time of 2), because it corresponds to mathematical
ratio, with a straight keyboard?  How does 2/3 correspond to 3 notes in
time of 2?

Let me stomp my feet in defiance and holler.

Ah, that's better.

-- 
David Kastrup

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Thomas Morley
2012/10/8 David Kastrup d...@gnu.org:
 Thomas Morley thomasmorle...@googlemail.com writes:

 [...]
 So, i believe that LilyPond shouldn't always follow her users'
 intuition, even if they are professional musicians.  In this case, i
 think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
 of 2), because it corresponds to mathematical ratio, and is similar to
 scaling durations.

 +1

 -1 from me for this one.  We have \times for that already and I can't
 count the times it took me to get the fraction right.  And with the name
 \times there is at least the mnemonic of the name itself.

 When I have a tuplet that is marked 3:2 on the tuplet itself using the
 respective tuplet style
 \override TupletNumber #'text = #tuplet-number::calc-fraction-text
 then it makes no sense at all that I have to enter it as
 \tuplet 2/3 { ... } for tuplets that are three to two normal notes.

Touché.
You have a point.

 That's not merely unintuitive, it is (oh goodie, no [talk] tag) plain
 absurd.  How can anybody write \tuplet 2/3 is better than \tuplet 3/2
 (for 3 notes in time of 2), because it corresponds to mathematical
 ratio, with a straight keyboard?  How does 2/3 correspond to 3 notes in
 time of 2?

 Let me stomp my feet in defiance and holler.

 Ah, that's better.


LOL

 --
 David Kastrup


-Harm

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Trevor Daniels

David Kastrup wrote Monday, October 08, 2012 10:45 PM


 Thomas Morley thomasmorle...@googlemail.com writes:
 
 [...]
 So, i believe that LilyPond shouldn't always follow her users'
 intuition, even if they are professional musicians.  In this case, i
 think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
 of 2), because it corresponds to mathematical ratio, and is similar to
 scaling durations.

 +1
 
 -1 from me for this one.  We have \times for that already and I can't
 count the times it took me to get the fraction right.  And with the name
 \times there is at least the mnemonic of the name itself.

Absolutely!  Inverting the fraction for \tuplet was the original reason
for inventing it, IIRC.

Trevor
___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Graham Percival
On Mon, Oct 08, 2012 at 11:49:39PM +0100, Trevor Daniels wrote:
 
 David Kastrup wrote Monday, October 08, 2012 10:45 PM
 
  Thomas Morley thomasmorle...@googlemail.com writes:
  
  In this case, i
  think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
  of 2), because it corresponds to mathematical ratio, and is similar to
  scaling durations.
 
  -1 from me for this one.  We have \times for that already and I can't
  count the times it took me to get the fraction right.  And with the name
  \times there is at least the mnemonic of the name itself.
 
 Absolutely!  Inverting the fraction for \tuplet was the original reason
 for inventing it, IIRC.

Woah, really?  I thought the whole point was to avoid the
confusion between \time and \times.  I think it would be
extremely confusing for \tuplet x/y to mean the same thing as
\times y/x.

- Graham

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Joseph Rushton Wakeling

On 10/08/2012 10:44 PM, Janek Warchoł wrote:

First, we shouldn't mix content and presentation.  I think it's a very
important rule; one of the best things in LilyPond is that she allows
to separate music from its layout.


Yes, fair point.  But one thing to be careful of particularly as regards 
contemporary music is that where in earlier music it's often possible to define 
standardized engraving rules, a lot of more recent works frequently switch 
between different stylistic choices as a means of indicating nuance.  If you 
can't do those switches quickly and easily from the syntax, you have a problem.


Looking at it a slightly different way, what may be merely presentation in 
earlier music, can actually be content for contemporary music.


I could give quite a lot of examples, but let's stick for now with the tuplets.


I think that what Joseph suggested is mostly a matter of layout.
Thus, it shouldn't require any additional user input.
For example, displaying the total duration of the tuplet can be done
in an automated way - i'm sure LilyPond can calculate it.  So, instead
of having an additional optional argument that the user would have to
provide, we should just create some property of TupletNumber (e.g.
display-total-duration) that would print these when set to true.


That's broadly what I mean, although I don't think you can do it without _any_ 
additional user input.  What we're certainly in agreement on is that it 
shouldn't be about manual overrides of what literally appears; I want to be able 
to easily choose between different stylistic options _and have the precise 
notation calculated automatically and correctly_.


You _do_ need to provide extra information about the stylistic choices, though 
(more on that below, following your suggestions).



We could then go as far as to create a function that would evaluate a
tuplet and set this property to true if the tuplet was complicated
enough.


That's a nice suggestion in and of itself, and would probably simplify a lot of 
notational issues.  You can probably specify some broad stylistic properties for 
tuplet notation such as number-only, ratio-when-nonstandard (e.g. you display 3, 
5, 7, 11, 12 for respectively 3:2, 5:4, 7:4, 11:8 and 12:8, but ratios for other 
cases), always-use-ratio, and so on.



Similarly, deciding what should be displayed inside the TupletBracket
is another layout decision - it seems doable to define several styles
(e.g. denominator only, ratio with slash, ratio with colon, ratio with
noteheads etc) and choose between them using 'style properrty of the
TupletNumber.


Just bear in mind that \once \override is almost unbearably verbose and 
confusing if you're doing it very regularly.



Joseph mentioned scores in which tuplet style changes all the time.  I
think that a proper solution to this problem is to create custom
shortcuts for overriding TupletNumber style - this way you still have
layout separated from score (i.e. one can easily turn these functions
off; the layout decisions aren't hardcoded in the music code itself.


Yes, that's probably fair, though I think with frequency even a short, 
easily-legible shortcut can become irritating, which is why I tried to develop a 
more flexible syntax for \tuplet itself.


From a strictly user point of view (not necessarily a developer's!), the ideal 
would probably be an ability to put in place detailed stylistic rules that 
depend on the precise tuplet ratios, the position in a nested tuplet hierarchy 
(top-level, 2nd-level, 3rd ... ?), whether or not the tuplet's beginning and end 
both coincide with a barline, and probably other factors besides; and then 
combine that with custom shortcuts for the few cases that slip through the cracks.



Secondly, there is a general design principle which says that
different things shouldn't be too similar.  Because of that i think
that we shouldn't allow \tuplet {} (without ratio argument) to mean a
triplet - it would be confusing (to say the least).


Indeed, but you could reasonably allow

 \tuplet n {}

... to be used for an n-tuplet for values of n that have a definitively 
standardized interpretation.  (Might be more trouble than it's worth though.)



In my opinion, we need a powerful function that can be used to notate
any conceiveable tuplet - that would be \tuplet x/y {}.  In addition
to this, we may define some shorthands, but it's crucial that they are
distinct from \tuplet x/y.  It should be obvious for everyone,
including all LilyPond beginners right from the start, that \tuplet
x/y is THE way to enter tuplets, and everything else is just a
shorthand.


One remark -- this concept of a \tuplet is basically just an inversion of 
\times, but you do have other opportunities here.  A tuplet is in practice not 
just a ratio but is a ratio _of note values_.  So there is a _content_ value in 
giving the user the opportunity to specify not just x/y but x/y of what?  (Or, 
x of what to y of what?), whether or not you 

Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Francisco Vila
2012/10/9 Graham Percival gra...@percival-music.ca:
 On Mon, Oct 08, 2012 at 11:49:39PM +0100, Trevor Daniels wrote:

 David Kastrup wrote Monday, October 08, 2012 10:45 PM

  Thomas Morley thomasmorle...@googlemail.com writes:
 
  In this case, i
  think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
  of 2), because it corresponds to mathematical ratio, and is similar to
  scaling durations.
 
  -1 from me for this one.  We have \times for that already and I can't
  count the times it took me to get the fraction right.  And with the name
  \times there is at least the mnemonic of the name itself.

 Absolutely!  Inverting the fraction for \tuplet was the original reason
 for inventing it, IIRC.

 Woah, really?  I thought the whole point was to avoid the
 confusion between \time and \times.  I think it would be
 extremely confusing for \tuplet x/y to mean the same thing as
 \times y/x.

I always understood that way.
-- 
Francisco Vila. Badajoz (Spain)
www.paconet.org , www.csmbadajoz.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Joseph Rushton Wakeling

On 10/08/2012 11:25 PM, Thomas Morley wrote:

But once I saw a bigband-part for guitar, notated with changing clefs
between bass and treble.
Well, it was the real treble, no transposition. That it was the real
treble was only understandable from the context.


The real stupidity there is surely that they bothered switching clefs at all?

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Joseph Rushton Wakeling

On 10/09/2012 01:12 AM, Graham Percival wrote:

On Mon, Oct 08, 2012 at 11:49:39PM +0100, Trevor Daniels wrote:

Absolutely!  Inverting the fraction for \tuplet was the original reason
for inventing it, IIRC.


Woah, really?  I thought the whole point was to avoid the
confusion between \time and \times.  I think it would be
extremely confusing for \tuplet x/y to mean the same thing as
\times y/x.


Aren't they both good reasons?  You get to avoid too-similar command names, 
_and_ you get a syntax that matches more closely to the musical notation.  Seems 
like a win on both counts.



___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread David Kastrup
Graham Percival gra...@percival-music.ca writes:

 On Mon, Oct 08, 2012 at 11:49:39PM +0100, Trevor Daniels wrote:
 
 David Kastrup wrote Monday, October 08, 2012 10:45 PM
 
  Thomas Morley thomasmorle...@googlemail.com writes:
  
  In this case, i
  think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
  of 2), because it corresponds to mathematical ratio, and is similar to
  scaling durations.
 
  -1 from me for this one.  We have \times for that already and I can't
  count the times it took me to get the fraction right.  And with the name
  \times there is at least the mnemonic of the name itself.
 
 Absolutely!  Inverting the fraction for \tuplet was the original reason
 for inventing it, IIRC.

 Woah, really?  I thought the whole point was to avoid the
 confusion between \time and \times.

Both the whole point impressions are mistaken if you look at the
original proposal in
URL:http://permalink.gmane.org/gmane.comp.gnu.lilypond.devel/50803.
It was one, deliberately separate point to discuss.  It was discussed,
and a consensus was reached.

 I think it would be extremely confusing for \tuplet x/y to mean the
 same thing as \times y/x.

Only if both are intended to be used interchangeably.  But use of \times
would be discouraged because of _both_ whole points.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-08 Thread Martin Tarenskeen



On Mon, 8 Oct 2012, Trevor Daniels wrote:



David Kastrup wrote Monday, October 08, 2012 10:45 PM



Thomas Morley thomasmorle...@googlemail.com writes:


[...]

So, i believe that LilyPond shouldn't always follow her users'
intuition, even if they are professional musicians.  In this case, i
think that \tuplet 2/3 is better than \tuplet 3/2 (for 3 notes in time
of 2), because it corresponds to mathematical ratio, and is similar to
scaling durations.


+1


-1 from me for this one.  We have \times for that already and I can't
count the times it took me to get the fraction right.  And with the name
\times there is at least the mnemonic of the name itself.


I am not in favour of allowing different commands \times 2/3 and \tuplet 
3/2 to do the same job. My voice would go to: just keep \times x/y the way 
it is. I can't see what makes 3/2 easier than 2/3. And having the choice 
of two commands doing the same job with a slightly different syntax only 
makes things more confusing for me.


--

MT

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


[proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Ian Hulin
Thanks to everyone for their feedback so far.
Here is Version 3 of the proposal.

There will be new commands to supplement (or eventually replace) the
current \times command.

1. \tuplet n/m {music expression}
%  does what \times does, but not so easily confused with \time
%  command.
2. \triplet {music expression} % shorthand for current
%  \times 2/3 command
3. \duplet {music expression} % shorthand for current
%  \times 3/2 command
4. \quadruplet {music expression} % shorthand for current
%  \times 3/4 command
5. \sextuplet {music expression} % shorthand for current
%  \times 4/6 command
Discussions seemed to imply that we also might need
6. \quintuplet {music expression} % shorthand for current
%  \times 4/5 command.

The design was deliberately restricted to providing
shorthands for the \times commands with 2:3 and 3:2 ratios expressed in
the n/m rational parameter, however there seemed to be a feeling that
the 5:4 ratio was just as common.  (See 6. above).

This should be relatively easy to implement by adding declarations to
music-functions-init.ly.

The following questions were put forward in Version 1:
1. Should the new \tuplet retain the \times meaning of the fraction,
i.e. \tuplet 2/3 {c8 c c} uses 2/3 because that's what you'd use if you
were just using durations: c8*2/3 c c , or
invert it as \tuplet 3/2 {c8 c c} because that reflects better the
three notes in the time of two definition of a triplet.

Feeling generally has been that \tuplet 3/2 {c8 c c} for a triplet was
better than the current \times 2/3 style.
One vote was for representing this as a ratio
e.g. \tuplet 3:2 {c8 c c}. The downside of this is that it would require
a parser extension, and provision of a home-brew ratio? predicate to
allow validation in the music function.
Another suggestion was that the commoner tuplets should be represented
as by an integer argument i.e. \tuplet 3 as an equivalent to the current
\times 2/3 and equivalent to \tuplet 3/2.  These would stand instead of
the proposed \triplet etc. commands.

Decisions:
Use the inverted fraction rather than the ratio format.
Use the above \triplet etc. commands in tandem with the new \tuplet:
they are more readable although less syntactically elegant.

2. Should the \tuplet command attempt to validate the length of the
incoming music expression?  I.e. add up the lengths of the constituent
notes in the music expression, and see if it would be a valid
note-length once multiplied (or divided depending on decision for 1.
above) the fraction.
Those who commented felt this was not possible.

Decision:
The \tuplet command will not attempt to validate the length of the
incoming music expression.

3. Another suggestion was that \tuplet command could be flexible
enough to cater for the the commoner forms of tuplets by using
defaults to arguments which the user could omit, e.g.:
\tuplet {music impression} % implies \tuplet 3/2 {music
expression} % \times 2/3 {blah} in current syntax.
\tuplet with an integer rather than a fraction implies other common
tuplets
\tuplet 2 implies \duplet
\tuplet 3 implies \triplet
\tuplet 4 implies \quadruplet
\tuplet 6 implies \sextuplet etc.

Decision:
After looking at some prototype code the \tuplet command will act as
simple replacement for \times.  Although the idea behind the
defaulting/implied values for the fraction parameter are quite elegant
as an idea, the disadvantage is that they actually make source code
potentially less readable, particularly when we using the command with
an integer fraction parameter, as we are using number in this case
as a keyword.  If users want not to code the complete fraction
parameter as, they can use \triplet and friends.

Cheers,

Ian



___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Joseph Rushton Wakeling

On 10/07/2012 05:04 PM, Ian Hulin wrote:

The design was deliberately restricted to providing
shorthands for the \times commands with 2:3 and 3:2 ratios expressed in
the n/m rational parameter, however there seemed to be a feeling that
the 5:4 ratio was just as common.  (See 6. above).


Yes, it is, and you can probably also include \septuplet as being equivalent to 
\tuplet 7 as being equivalent to \times 4/7.


That's the established modern standard septuplet, although there are others in 
the literature past and present (in modern pieces, alternate septuplets are 
usually given with the explicit ratio, e.g. 7:6, 7:8 etc.).



3. Another suggestion was that \tuplet command could be flexible
enough to cater for the the commoner forms of tuplets by using
defaults to arguments which the user could omit


Apologies for coming late with these next remarks, but it's perhaps worth 
thinking about quite how flexible a \tuplet command could be, in respect of some 
of the various modern notations out there.


Just to give a flavour, besides the standard

|-- n --|

(i.e. bracket with number), and the almost-as-standard

|- n : m -|

(i.e. ratio), you also might encounter something like,

|- 3 : 2 {2} -|
or
|- 3 {2} : 2 -|

where {2}, {4}, {8} etc. represents a written half, quarter, eighth note, etc.

or perhaps,
|- 7 {16} : {4} -|

and sometimes things like,

|- 5 {16} : 4 {16} -|

(which feels a bit redundant but is certainly unambiguous).

Of course, conceptually you could also write any arbitrary combination, like

|- 5 {16} : 2 {4} -|

... though it's not a notation you're likely to find (never say never...).

What you can also get is something where the total duration of the tuplet is 
indicated above the number or ratio, something like e.g.


   {4}
|-- 3 -- |

(3 triplet eighths = 1 quarter note in total)

or
 {8}
|-- 5 : 4 --|

(5 quintuplet 32nds = 1 eighth-note)

or
   { 8 ~ 16. }
|-- 11 : 7 --|

(11 32nd-notes in the time of 7)

This indicator of total duration is used very widely by Ferneyhough to indicate 
the total length of the outermost of his extensively nested tuplets (*), and 
it's quite a useful device in being able to see how long a given complex 
rhythmic section lasts relative to the conductor's beat.  You can see examples here:

http://soundandmusic.org/thecollection/files/scores/6634w.pdf

(* Ferneyhough's more recent scores, engraved with Finale, seem to omit this 
notation, which is a shame, and probably entirely down to Finale not being able 
to provide it automatically.)


So, for a _really_ effective \tuplet command, it would be great if the syntax 
could allow for specifying these different options -- single number, ratio, 
ratio with note values before, after or both sides, total duration above -- in a 
concise and simple way, _without_ needing to engage in copious \overrides and 
manually writing the contents of the tuplet bracket.


I realize that's a somewhat broader scope of notation than is really the focus 
of this proposal, but my feeling is it should be possible to implement as a 
natural extension of the \tuplet functionality already proposed so far.  I just 
thought I'd bring it up so the design of \tuplet doesn't cut off these 
possibilities before they've even been considered.


I do have some tentative syntax ideas here here, but before putting them forward 
I'd rather hear what others have to think.


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Reinhold Kainhofer

On 2012-10-07 23:14, Joseph Rushton Wakeling wrote:

Apologies for coming late with these next remarks, but it's perhaps
worth thinking about quite how flexible a \tuplet command could be, in
respect of some of the various modern notations out there.

Just to give a flavour, besides the standard

 |-- n --|

(i.e. bracket with number), and the almost-as-standard

 |- n : m -|

(i.e. ratio), you also might encounter something like,

 |- 3 : 2 {2} -|
or
 |- 3 {2} : 2 -|

where {2}, {4}, {8} etc. represents a written half, quarter, eighth
note, etc.


http://lsr.dsi.unimi.it/LSR/Item?id=482
http://lsr.dsi.unimi.it/LSR/Item?id=817

I implemented those functions for MusicXML import. Note, however, that 
lilypond does not automatically use those, you have to manually set them 
as shown in the snippets.


Cheers,
Reinhold

--
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://www.kainhofer.com
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * Edition Kainhofer, Music Publisher, http://www.edition-kainhofer.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Joseph Rushton Wakeling

On 10/07/2012 11:29 PM, Reinhold Kainhofer wrote:

http://lsr.dsi.unimi.it/LSR/Item?id=482
http://lsr.dsi.unimi.it/LSR/Item?id=817

I implemented those functions for MusicXML import. Note, however, that lilypond
does not automatically use those, you have to manually set them as shown in the
snippets.


Do I understand right that these functions are entirely manual overrides -- that 
they specify what to print (either a note-value, or the entire ratio) without 
reference to the actual tuplet underneath?


This is what I'm getting at, you see -- I'd like to see a \tuplet command that 
takes the information I've given about the tuplet ratio and units and translates 
that _automatically_ into the correct notation.


I'm not trying to dismiss your work, it's just that I'm leery of purely manual 
notational overrides because there's always a risk of screwing things up if you 
later revise the piece and forget to also revise the override (there's a similar 
problem IIRC with the current solution to customized subsidiary beam-breaking).



___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Reinhold Kainhofer

On 2012-10-07 23:38, Joseph Rushton Wakeling wrote:

On 10/07/2012 11:29 PM, Reinhold Kainhofer wrote:

http://lsr.dsi.unimi.it/LSR/Item?id=482
http://lsr.dsi.unimi.it/LSR/Item?id=817

I implemented those functions for MusicXML import. Note, however, that
lilypond
does not automatically use those, you have to manually set them as
shown in the
snippets.


Do I understand right that these functions are entirely manual overrides
-- that they specify what to print (either a note-value, or the entire
ratio) without reference to the actual tuplet underneath?


No, the formatter functions that I wrote use the tuplet fraction. The 
override does not contain the values of the tuplet fraction, just the 
note types. E.g.


  \once \override TupletNumber #'text =
#(tuplet-number::append-note-wrapper
  tuplet-number::calc-denominator-text 4)
  \times 2/3  { c8 c8 c8 c8 c8 c8 }

This will print 3{4}, where the 3 comes from the tuplet fraction and 
only the base note duration is set in the override.


Or the more general case:

  \once \override TupletNumber #'text =
#(tuplet-number::fraction-with-notes 4. 8)
  \times 2/3  { c4. c4. c4. c4. }

This will print a tuplet number
  3{4.}:2{8}
where the 3 and the 2 comes from the \times command and only the note 
durations are specified in the override. There is, however, no check 
whether the fraction with the durations makes sense and matches the real 
tuplet (in most cases, it will not).


There are, however, also formatter functions that override also the 
tuplet fraction.



This is what I'm getting at, you see -- I'd like to see a \tuplet
command that takes the information I've given about the tuplet ratio and
units and translates that _automatically_ into the correct notation.


I don't think that fully automatic tuplet notation will work in all cases.
However, there is certainly enough to think about a more general tuplet 
command in lilypond. The formatting functions are already there, what's 
missing is the input syntax.



I'm not trying to dismiss your work, it's just that I'm leery of purely
manual notational overrides because there's always a risk of screwing
things up if you later revise the piece and forget to also revise the
override (there's a similar problem IIRC with the current solution to
customized subsidiary beam-breaking).


It's not purely manual overrides... (But still enough rope to hang 
yourself in the way you describe).


Cheers,
Reinhold


--
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://www.kainhofer.com
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * Edition Kainhofer, Music Publisher, http://www.edition-kainhofer.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Joseph Rushton Wakeling

On 10/07/2012 11:52 PM, Reinhold Kainhofer wrote:

There is, however, no check whether the fraction with the durations makes
sense and matches the real tuplet (in most cases, itwill not).


Yes, that's what I mean.  I'd like to see something where the fractions and 
durations are all derived from the tuplet syntax.



I don't think that fully automatic tuplet notation will work in all cases.
However, there is certainly enough to think about a more general tuplet command
in lilypond. The formatting functions are already there, what's missing is the
input syntax.


Well, just as a very provisional sort of example, I was thinking along these 
sort of lines:


\tuplet 7 {  }  gives you 7 in the time of 4, and prints just
a 7 in the tuplet bracket.

\tuplet 7/4 {  }gives you regular 7:4 ratio, and by default
prints the ratio in the tuplet bracket.

\tuplet { 8*7 }/4 {  }  gives you 7 8th-notes in the time of 4, and
would print in the tuplet bracket: 7 {8} : 4
(replacing {8} by an actual 8th note).

\tuplet 7/{ 8*4 } {  }  ditto, but you get the note-value printed the
other side of the ratio:  7 : 4 {8}

\tuplet {16*7}/{4} { ... }  gives you 7 16th-notes in the space of a
quarter-note, and would print:   7 {16} : {4}

\tuplet {16*7}/{4.} { .. }  gives you 7 16th-notes in the space of a dotted
quarter (really, a 7:6 ratio), and would print:
7 {16} : {4.}

\tuplet {16*7}/{8*3} {...}  gives you 7 16th-notes in the space of 3 8th-
notes (really, the same as the above), and would
print:  7 {16} : 3 {8}

Note that at least some of the above examples, by specifying note durations as 
well as ratios, could in principle be checkable for correctness.


Then you could have something like \tupletWithDuration to indicate printing the 
overall duration above the tuplet value, à la Ferneyhough.


It might also be useful to have something which allows you to specify the 
note-values (so enabling checking) _without_ having them appear in the tuplet 
bracket.  e.g. something like (this is probably stupid, but I hope someone can 
come up with a better idea):  \tuplet {16!*7} / 4 would print the 16th-note, 
\tuplet {16*7} {4} wouldn't; and similarly \tuplet {16!*7}/{4!}  would see the 
tuplet bracket containing 7 {16} : {4}, while \tuplet {16*7}/{4!} would see it 
contain 7 : {4}.


I don't know if any of the above syntax is feasible as-is (I think my idea 
involving ! is probably really stupid, I hope the other bits are vaguely sane), 
but I hope it's at least useful in pointing to the sort of thing that could be done.



It's not purely manual overrides... (But still enough rope to hang yourself in
the way you describe).


For what it's worth, I did appreciate that it wasn't all manual -- it was the 
rope I was worrying about, though :-)



___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread David Kastrup
Joseph Rushton Wakeling joseph.wakel...@webdrake.net writes:

[...]

 Just to give a flavour, besides the standard

 |-- n --|

 (i.e. bracket with number), and the almost-as-standard

 |- n : m -|

 (i.e. ratio), you also might encounter something like,

 |- 3 : 2 {2} -|
 or
 |- 3 {2} : 2 -|

 where {2}, {4}, {8} etc. represents a written half, quarter, eighth note, etc.

 or perhaps,
 |- 7 {16} : {4} -|

 and sometimes things like,

 |- 5 {16} : 4 {16} -|

 (which feels a bit redundant but is certainly unambiguous).

 Of course, conceptually you could also write any arbitrary combination, like

 |- 5 {16} : 2 {4} -|

 ... though it's not a notation you're likely to find (never say never...).

 What you can also get is something where the total duration of the
 tuplet is indicated above the number or ratio, something like e.g.

{4}
 |-- 3 -- |

 (3 triplet eighths = 1 quarter note in total)

 or
  {8}
 |-- 5 : 4 --|

 (5 quintuplet 32nds = 1 eighth-note)

 or
{ 8 ~ 16. }
 |-- 11 : 7 --|

 (11 32nd-notes in the time of 7)

[...]

 So, for a _really_ effective \tuplet command, it would be great if the
 syntax could allow for specifying these different options -- single
 number, ratio, ratio with note values before, after or both sides,
 total duration above -- in a concise and simple way, _without_ needing
 to engage in copious \overrides and manually writing the contents of
 the tuplet bracket.

I diasagree.  Whether or not you we provide separate commands actually
doing the overrides, the choice between all those variants does not
appear to convey musical information individually but just constitutes a
different choice of consistent notation throughout a piece.  Having to
specify your style for every tuplet again does not make sense, so this
functionality falls squarely into the domain of graphical representation
and thus grob overrides, and any commands provided for manipulating them
are best kept separate from the commands manipulating the actual timing.

-- 
David Kastrup


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Joseph Rushton Wakeling

On 10/08/2012 12:40 AM, David Kastrup wrote:

I diasagree.  Whether or not you we provide separate commands actually
doing the overrides, the choice between all those variants does not
appear to convey musical information individually but just constitutes a
different choice of consistent notation throughout a piece.


Well, that's the point -- if you look at various contemporary pieces (e.g. 
Ferneyhough), the tuplet style is _not_ consistent throughout the piece but is 
dependent on musical context.  Some tuplets are just a single number (e.g. 
standard triplets or quintuplets), some have ratios, some have a single number 
and an overall duration, some have ratios and overall durations, 


It sounds like a complicated mess but visually it's actually quite sane and 
legible and makes for an easier read than a single standard tuplet notation would.


As you say, it would be a PITA to notate such a piece having to use \overrides 
all over the place to change the style, which is why it would be very helpful if 
the \tuplet syntax could allow the choice between these stylistic variants to be 
made concisely.  Cf. my very provisional syntax ideas, which I imagine probably 
aren't workable as-is; but could something functionally equivalent and similarly 
concise be worked out?


___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel


Re: [proposal] easy triplets and tuplets - Draft 3

2012-10-07 Thread Reinhold Kainhofer

On 2012-10-08 00:21, Joseph Rushton Wakeling wrote:

On 10/07/2012 11:52 PM, Reinhold Kainhofer wrote:

There is, however, no check whether the fraction with the durations makes
sense and matches the real tuplet (in most cases, itwill not).


Yes, that's what I mean.  I'd like to see something where the fractions
and durations are all derived from the tuplet syntax.


Actually, thinking of it, it would actually be quite simple to calculate 
the displayed fraction with durations from the given durations and the 
tuplet fraction (except that there is no way to distinguish 3:2 and 4:6).


(m*dur1):(n*dur2) = tuplet fraction

can be easily solved as
m/n = (tuplet fraction)*dur2/dur1

and then reduced to minimal m and n. This could then be displayed as
  m{dur1}:n{dur2}

Cheers,
Reinhold


--
--
Reinhold Kainhofer, reinh...@kainhofer.com, http://www.kainhofer.com
 * Financial  Actuarial Math., Vienna Univ. of Technology, Austria
 * http://www.fam.tuwien.ac.at/, DVR: 0005886
 * Edition Kainhofer, Music Publisher, http://www.edition-kainhofer.com

___
lilypond-devel mailing list
lilypond-devel@gnu.org
https://lists.gnu.org/mailman/listinfo/lilypond-devel