Re: how to make decisions?

2012-09-07 Thread David Kastrup
Jan Nieuwenhuizen jann...@gnu.org writes:

 Graham Percival writes:

 What's depressing?  I didn't see anything unusual in those
 comments.

 I would not use the word depressing, but I cannot help wondering
 why someone would think that, anno 2009, using musixtex would
 be a good idea, and needs to blog about it and get comments
 to find out about the existence of LilyPond.

 Also, it is saddening to read a senior consultant with a PhD
 suggest the use of a proprietary software package.

It is the job of a consultant to recommend a reliable way of turning
money into success.  Would you buy a car without gas tank opening?  Oh,
this car does not need refilling.

-- 
David Kastrup

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


Re: how to make decisions?

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

 On Thu, Sep 06, 2012 at 10:22:57AM +0200, David Kastrup wrote:
  Absolutely.  I'll just point out where one person who tried out Lilypond
  was innocently transparent in his bewilderment that anyone would call 
  out fis in the key of D, and quietly denote the unusual F-natural as f.
 
 http://www.johndcook.com/blog/2009/03/15/typesetting-music-in-latex-and-lilypond/
 
 The comments are almost more depressing than the blog post itself.

 What's depressing?  I didn't see anything unusual in those
 comments.

They shun LilyPond for all the wrong reasons.

-- 
David Kastrup

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


Re: how to make decisions?

2012-09-07 Thread Jan Nieuwenhuizen
David Kastrup writes:

 Also, it is saddening to read a senior consultant with a PhD
 suggest the use of a proprietary software package.

 It is the job of a consultant to recommend a reliable way of turning
 money into success.  Would you buy a car without gas tank opening?  Oh,
 this car does not need refilling.

You imagine that he receives some kind of revenue from suggesting the
use of proprietary software and that for this particular blog, it was
more lucrative to suggest Sibelius; otherwise he would just as
convincingly steered people to Finale?

Man, am I naive.  I do see now what you find depressing about this.  How
can we ever hope to get people to suggest LilyPond; by merit only?!

Jan but-it's-just-an-innocent-blog-post Nieuwenhuizen

-- 
Jan Nieuwenhuizen jann...@gnu.org | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl  

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


Re: how to make decisions?

2012-09-07 Thread Jan Nieuwenhuizen
David Kastrup writes:

 They shun LilyPond for all the wrong reasons.

Well, the wrong reasons are easily countered.  And as long as they don't
identify the good reasons to avoid LilyPond, we can hopefully fix some
of them before they find out ;-)

Jan

-- 
Jan Nieuwenhuizen jann...@gnu.org | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl  

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


Re: how to make decisions?

2012-09-07 Thread Janek Warchoł
On Fri, Sep 7, 2012 at 10:36 AM, Jan Nieuwenhuizen jann...@gnu.org wrote:
 You imagine that he receives some kind of revenue from suggesting the
 use of proprietary software and that for this particular blog, it was
 more lucrative to suggest Sibelius; otherwise he would just as
 convincingly steered people to Finale?

I find it more depressing that most people do recommend proprietary
software because they don't see anything wrong in it!

 Man, am I naive.  I do see now what you find depressing about this.  How
 can we ever hope to get people to suggest LilyPond; by merit only?!

By sword and fire! ;)

Janek

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


Re: how to make decisions?

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

 They won't give up their working cars and their mechanics.  We need to
 offer something new.  And new business models (like transpose-on-demand
 with electronic or overnight delivery when the soloist would be
 inconvenienced by wrong pitches).  Ultimately things like a whole
 orchestra playing from electronic paper, getting acoustically
 synchronized page turns, live synchronized performance indications (the
 conductor makes a different decision in his partitura and the sheets
 from the musicians follow suit) and corrections.  Including let's take
 that aria one note down.

Actually, just being able for the conductor to flip the partitura to one
page and point to a measure and have all the orchestra's sheets flip to
the same page and have the measure flashing in red would make things a
lot easier.

Of course you can do the same using traditional typesetting if every
score rendition knows where every measure is.  But things like an
orchestra player telling his score to format things bigger since he
can't properly see stuff (changing page layout, _if_ one wants to have
page layout rather than an endless vertical roll) are also important.

One _repeated_ advantage cited to me from people sponsoring LilyPond
work was the ability to create scores formatted larger for the sake of
people with seeing impairments, thus keeping the world of music
accessible to old people and/or monks performing under less than optimal
light conditions.

-- 
David Kastrup


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


Re: how to make decisions?

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

 David Kastrup dak at gnu.org writes:

 I proposed already at one point of time to require writing 4.0 rather
 than 4. for the floating point number.  This will not cure a lot of use
 cases, and we still have the ambiguity between 4 the duration and 4 the
 integer, and -4 the fingering and -4 the integer.
 
 Some of those can be resolved in context, but this does not help for
 conversions, and we also have largely context-free situations, like in
 #{ ... #} or on the right side of assignments.  At the current point of
 time, I can't write things like #{ 4.0\cm #} in appropriate contexts
 because 4.0 is not recognized in notemode as a real number.  Writing
 #{ $4.0 \cm #} would work but it does not exactly win a prize for
 beauty.
 
 This is interesting.  LilyPond has used context to know that in
\paper {line-width = 16.\cm}
 the '-' is part of the variable name, the '16.' a decimal number, and the 
 \cm a predefined dimension -- as opposed to
 cm = {c16. d64 e_- } \new Voice \cm

 We have been required to use Scheme to write decimal numbers, everywhere 
 outside of \paper{} and other headers
midiMaximumVolume = #0.7

 Is this why you let '-' and '_' in identifiers out of their previous 
 confines?  I thought you wanted them in music identifiers. (Others have 
 requested the '_' at least.)

I am not interested in using them in music identifiers (and the entry in
changes.tely clearly says so:

Staying with established conventions (like not using dashes or
underlines for command names intended to be used inside of music)
remains advisable.  The reason for this change is more robust
recognition of LilyPond's lexical units for LilyPond itself as well as
external tools interpreting its syntax.

The principal reason was to be able to unify command/word syntax across
modes to allow scanning of a lookahead token over a lexer mode switching
border.

 How far do you foresee merging the syntax in \paper {} with that in
 note-entry mode?

One token far.  Syntax is more than token syntax.  I'd definitely like
fewer lexer modes, though.

  I've seen complaints in non-Lilypond forums that LilyPond pitch
  entry is not relative to key signature.  We could accommodate this
  ...

 My personal take on this is no.  Reason 1 ... 2 ...

 Absolutely.  I'll just point out where one person who tried out Lilypond
 was innocently transparent in his bewilderment that anyone would call 
 out fis in the key of D, and quietly denote the unusual F-natural as f.

http://www.johndcook.com/blog/2009/03/15/typesetting-music-in-latex-and-lilypond/

The comments are almost more depressing than the blog post itself.

-- 
David Kastrup


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


Re: how to make decisions?

2012-09-06 Thread Graham Percival
On Thu, Sep 06, 2012 at 10:22:57AM +0200, David Kastrup wrote:
  Absolutely.  I'll just point out where one person who tried out Lilypond
  was innocently transparent in his bewilderment that anyone would call 
  out fis in the key of D, and quietly denote the unusual F-natural as f.
 
 http://www.johndcook.com/blog/2009/03/15/typesetting-music-in-latex-and-lilypond/
 
 The comments are almost more depressing than the blog post itself.

What's depressing?  I didn't see anything unusual in those
comments.

- Graham

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


Re: how to make decisions?

2012-09-06 Thread Joseph Rushton Wakeling

On 03/09/12 14:18, David Kastrup wrote:

I don't have a good answer here, and I am not particularly happy with
suggesting that the work I end up doing will not likely be shaped much
by committee or community decisions but rather mostly by my own
conscience and programmer instincts.  Which, in turn, are shaped by the
perceived needs of the community.


Would it be better in this respect if, instead of proposing syntax changes 
(which are easily problematic if done without sufficient knowledge of how the 
parser and lexer work), we collaborated on defining the _problem_ with 
sufficient rigour?  That is, identifying what the syntax needs to achieve and 
how the current syntax fails.


In this case, the problem might include that the syntax needs an unambiguous way 
to indicate whether a command applies to a preceding or subsequent note or 
entity; an unambiguous way to group together entities (including commands) so 
that other commands can be applied to them collectively; a way to indicate 
direction where this matters; and so on.  I'm deliberately _not_ being rigorous 
at this point, but I think you get the idea.


Then, once the problem _is_ rigorously defined and agreed upon, you and the 
others who understand the technical issues could propose a solution, and we 
could provide feedback in terms of usability, whether it actually _does_ solve 
the problem we face and so on, and so evolve towards a solution.


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


Re: how to make decisions?

2012-09-06 Thread Joseph Rushton Wakeling

On 06/09/12 11:48, Graham Percival wrote:

What's depressing?  I didn't see anything unusual in those
comments.


I suppose it's a bit depressing that no one pointed out why it matters that you 
enter exact pitch names and don't infer accidentals from the key signature. 
(I.e., how do you copy-paste effectively unless pitches are specified exactly?)


I've added a comment (currently in moderation) touching on this point and also 
pointing out that it's possible to use other note-names than the Dutch.  A bit 
late for a 2009 blog post, but better late than never.


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


Re: how to make decisions?

2012-09-06 Thread Jan Nieuwenhuizen
Graham Percival writes:

 What's depressing?  I didn't see anything unusual in those
 comments.

I would not use the word depressing, but I cannot help wondering
why someone would think that, anno 2009, using musixtex would
be a good idea, and needs to blog about it and get comments
to find out about the existence of LilyPond.

Also, it is saddening to read a senior consultant with a PhD
suggest the use of a proprietary software package.  Hopefully
he'll hear about Sibelius' [development] demise and takes
the lock-in-to-a-possbily-dieing-vendor viewpoint into
account when suggesting software solutions.

Jan

-- 
Jan Nieuwenhuizen jann...@gnu.org | GNU LilyPond http://lilypond.org
Freelance IT http://JoyofSource.com | Avatar®  http://AvatarAcademy.nl  

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


Re: how to make decisions?

2012-09-06 Thread Jonathan Wilkes
 Message: 1
 Date: Thu, 06 Sep 2012 16:25:49 +0200
 From: Jan Nieuwenhuizen jann...@gnu.org
 To: Graham Percival gra...@percival-music.ca
 Cc: David Kastrup d...@gnu.org, lilypond-devel@gnu.org
 Subject: Re: how to make decisions?
 Message-ID: 878vcnp6s2@nlvehvbe01nb29b.ddns.nl-htc01.nxp.com
 Content-Type: text/plain; charset=utf-8
 
 Graham Percival writes:
 
 What's depressing?  I didn't see anything unusual in those
 comments.
 
 I would not use the word depressing, but I cannot help wondering
 why someone would think that, anno 2009, using musixtex would
 be a good idea, and needs to blog about it and get comments
 to find out about the existence of LilyPond.
 
 Also, it is saddening to read a senior consultant with a PhD
 suggest the use of a proprietary software package.  Hopefully
 he'll hear about Sibelius' [development] demise and takes
 the lock-in-to-a-possbily-dieing-vendor viewpoint into
 account when suggesting software solutions.

Advocating for free software is a lot more complex than just telling
people to avoid vendor lock-in (which can happen in free software[1].
And having a PhD does not mean a person has the time
to do a full-on research project to figure out if the four freedoms of the
GPL are actually a viable way to protect users' freedoms.  Heck, they
probably don't even have the time to really grasp what user freedom
even means, if we're being serious about the true extent of that phrase.

This is especially problematic because the most obvious user-facing
part of free software-- the graphical user interface-- has historically been
the weakest link.  So there's the quite real deficiency in what the user
_sees_ when they open Pure Data when compared to Max/MSP-- which
is immediately apparent-- and they must weigh that against the ethical
implications of using proprietary software-- which require a research 
project[2].

Similarly with Sibelius.  I don't understand why you're saddened by this,
especially considering you're fighting on two fronts because even with the
frontends Lilypond has no _easy_ way to make tweaks to a large score
without unreasonably long periods of recompilation.  Did you really expect
composers and engravers to spend time they don't have solidfying an
ethical argument against software that does a decent technical job for them
in order to use an ethical alternative that will clearly require more of their
time in order to finalize output?

[1] See tivoization, as well as software-as-a-service.

[2] And since when are PhDs more likely to make ethical decisions outside
of their area of expertise?

-Jonathan

 
 Jan

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


Re: how to make decisions?

2012-09-06 Thread Janek Warchoł
On Thu, Sep 6, 2012 at 2:33 PM, Joseph Rushton Wakeling
joseph.wakel...@webdrake.net wrote:
 On 03/09/12 14:18, David Kastrup wrote:
 I don't have a good answer here, and I am not particularly happy with
 suggesting that the work I end up doing will not likely be shaped much
 by committee or community decisions but rather mostly by my own
 conscience and programmer instincts.  Which, in turn, are shaped by the
 perceived needs of the community.

 Would it be better in this respect if, instead of proposing syntax changes
 (which are easily problematic if done without sufficient knowledge of how
 the parser and lexer work), we collaborated on defining the _problem_ with
 sufficient rigour?  That is, identifying what the syntax needs to achieve
 and how the current syntax fails.

+1.
I think i have to stop talking about my ideas all the time.
:)
I'll take a break and focus on defining problems.

 Then, once the problem _is_ rigorously defined and agreed upon, you and the
 others who understand the technical issues could propose a solution, and we
 could provide feedback in terms of usability, whether it actually _does_
 solve the problem we face and so on, and so evolve towards a solution.

+1.
cheers,
Janek

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


Re: how to make decisions?

2012-09-05 Thread Janek Warchoł
On Tue, Sep 4, 2012 at 11:22 PM, Trevor Daniels t.dani...@treda.co.uk wrote:
 So what problems do the users have, exactly?  We should address this
 question first.
 [...]
 But if we are to have a discussion about syntax let's first list the problems
 we need to solve, and reach agreement on which ones need to be tackled.
 Then we know what it is we are trying to optimise.

I think that's a very good idea.  It seems to me that we don't have
the big picture yet - and we should have it before discussing specific
proposals.

I think that for the next several weeks we should focus on gathering
information about the /problems/ people have.  Not the ideas for
solutions.  Problems.

For example,
  in { a \parenthesize b \mf c d } it's confusing what gets
parenthesized and what gets mezzoforte
is a description of a problem, while
  lets require a dash before everything that attaches to a note
is a solution.  Lets talks about problems first, then solutions.

I'd propose these as the official rules of thumb for next 2 months:
- describe the problems you have.  What is confusing?  What is
inconvenient?  What is difficult to express in Lily syntax?
- don't discuss possible solutions.  If you absolutely have to,
mention shortly and idea, but don't discuss it yet.

This way we won't waste our time discussing the specifics before
knowing what is this all about.

What do you think? Graham?

cheers,
Janek

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


Re: how to make decisions?

2012-09-05 Thread Keith OHara
Trevor Daniels t.daniels at treda.co.uk writes:

 So what problems do the users have, exactly?  We should address this 
 question first.  Janek apparently has his list, which would be a good start.
 But we should not invent problems where they don't exist.  I've probably 
 read every email on the user list for the last 4 years, and inconsistent 
 parser rules have not figured prominently.  

I generally agree.  But I also have sympathy for the desire to first clarify 
some broader questions  -- such as, in which /direction/ to straighten out the 
parser when user problems require changes to the parser.

I understand that past catering to concrete user needs has gradually resulted 
in a messy syntax, very difficult to import into other systems (musescore 
tried), which also makes it harder to cater to some current user desires.

The readable  \tempo Adagio 4. = 30~40   lacks the delimiters that most 
computer-entry formats require, which made it unusable in a \midi block for 
many years -- because LilyPond accepts decimal-point numbers in the midi block, 
for probably another good reason.  Without requiring delimiters it is hard to 
specify exactly when LilyPond should read 4. as a duration, and when as 4.000.

One situation where LilyPond /does/ require delimiters is \chordmode { c4:8 }

The broad question is: Require delimiters to clarify context (for users, 
LilyPond, and software importing LilyPond) -- more or less?


I've seen complaints in non-Lilypond forums that LilyPond pitch entry is not 
relative to key signature.  We could accommodate this by re-defining pitch 
names upon seeing 
  { \keyAffectingEntry \d\major  ... }
so that f means F-sharp and we have to type fn for F.  (This requires pushing a 
pitchname-table on a stack for every nested level of {} or )  

Digits-in-identifiers is an often-requested feature that seems it should be 
easy (if we are willing to require a space in \skip 4 and \tuplet 2/3).  The 
trouble is that I cannot use vn1 = {..} without either telling the lexer that 
vn will never by a note-name in any language, or requiring some structure to 
specify when music functions are done:  \afterGrace ces2 des8 vn1 = c2.

I used to use \cueWhile, but then switched to your \cueDuring with the extra 
parameter, and had a few mysterious errors when I forgot which one had the 
extra parameter.  David of course suggested I make a \cueDuring with an 
optional parameter.  Either way, the poor guy writing the .ly importer in 
Musescore has no hope to keep up.

The broad question for these three is: Syntax that changes depending on the 
definitions of the functions in the input -- good or bad?


My prediction is that LilyPond will keep its syntax that requires knowledge of 
the definition of functions to be parsed correctly, thus un-importable by other 
software,

.. and that LilyPond will keep its freedom from delimiters, with David pulling 
LilyPond further toward scanning the input independent of context.

Others certainly frame the broad questions differently, and probably see 
additional broad questions. I think we need to allow some time for compromise 
on these balances between philosophy and practicality.

Many of the specific items on the GLISS list concern names of things, which I 
think is independent of the broad questions, but will solve some real 
problems.  I was quite puzzled by a question on -user yesterday, until I 
realized he had confused the purposes of Staff.keySignature versus 
Staff.KeySignature.


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


Re: how to make decisions?

2012-09-05 Thread Keith OHara
Janek Warchoł janek.lilypond at gmail.com writes:

 I think that for the next several weeks we should focus on gathering
 information about the /problems/ people have.  Not the ideas for
 solutions.  Problems.
 
 For example,
   in { a \parenthesize b \mf c d } it's confusing what gets
 parenthesized and what gets mezzoforte
 is a description of a problem, while  [...]
 is a solution.  Lets talk about problems first, then solutions.
 

I think I have that problem, but maybe not exactly what you mean.

Does the confusion you refer to happen more in reading (other people's) 
Lilypond input, or in writing your own Lilypond input?

I often have difficulty remembering which incantation I need to type, in 
order to set music the way I need.  Part of what I need to remember is the
order in which I need to type the commands and notes.

If I use \parenthesize, I also need to remember how to apply it to the 
note-head, or more likely the mf or some accent.

When working with other people's Lilypond, I just look at the output to
remember what commands mean, so I have no problem there.


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


Re: how to make decisions?

2012-09-05 Thread Trevor Daniels

Keith OHara wrote Wednesday, September 05, 2012 9:59 AM

 I generally agree.  But I also have sympathy for the desire to first clarify 
 some broader questions  -- such as, in which /direction/ to straighten out 
 the 
 parser when user problems require changes to the parser.
 
 The broad question is: Require delimiters to clarify context (for users, 
 LilyPond, and software importing LilyPond) -- more or less?

There are many places in LilyPond now where delimiters are necessary
to resolve certain situations but are not generally mandatory.  Perhaps
this approach could be extended.

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


Re: how to make decisions?

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

 The readable \tempo Adagio 4. = 30~40 lacks the delimiters that most
 computer-entry formats require, which made it unusable in a \midi
 block for many years -- because LilyPond accepts decimal-point numbers
 in the midi block, for probably another good reason.  Without
 requiring delimiters it is hard to specify exactly when LilyPond
 should read 4. as a duration, and when as 4.000.

I proposed already at one point of time to require writing 4.0 rather
than 4. for the floating point number.  This will not cure a lot of use
cases, and we still have the ambiguity between 4 the duration and 4 the
integer, and -4 the fingering and -4 the integer.

Some of those can be resolved in context, but this does not help for
conversions, and we also have largely context-free situations, like in
#{ ... #} or on the right side of assignments.  At the current point of
time, I can't write things like #{ 4.0\cm #} in appropriate contexts
because 4.0 is not recognized in notemode as a real number.  Writing
#{ $4.0 \cm #} would work but it does not exactly win a price for
beauty.

 One situation where LilyPond /does/ require delimiters is
 \chordmode { c4:8 }

That's because it changes the lexer modes.  Switching back reliably is
only possible when you have a closing delimiter that can still be
scanned in the inner lexer mode, so that you are in outer lexer mode
again before even having to start looking at the next token.

 The broad question is: Require delimiters to clarify context (for
 users, LilyPond, and software importing LilyPond) -- more or less?

Where necessary.

 I've seen complaints in non-Lilypond forums that LilyPond pitch entry is not 
 relative to key signature.  We could accommodate this by re-defining pitch 
 names upon seeing 
   { \keyAffectingEntry \d\major  ... }
 so that f means F-sharp and we have to type fn for F.  (This requires
 pushing a
 pitchname-table on a stack for every nested level of {} or )

My personal take on this is no.  Reason 1 is that then the actual
pitch will depend on _input_ accidental rules.  That will make MIDI and
MusicXML output less predictable.  Reason 2 is that a human-oriented
linear non-graphic representation of what is usually seen graphically
should resemble the manner in which humans would talk on the phone, a
similarly linear medium.  I don't know other note language conventions,
but here in Germany you would _never_ call a fis an f just because its
accidental is contained in the key signature.  Totally unthinkable even
among amateurs.  You'd immediately get Oh, this is supposed to be an f?
How do you tell?.  Not because of nitpicking, but because nobody would
guess that f would be used to describe a fis.

So this is at least for me a very definite this is not even open to
consideration area.  Of course, people deserve to be told just _why_ it
is such a bad idea.

 I used to use \cueWhile, but then switched to your \cueDuring with the
 extra parameter, and had a few mysterious errors when I forgot which
 one had the extra parameter.  David of course suggested I make a
 \cueDuring with an optional parameter.  Either way, the poor guy
 writing the .ly importer in Musescore has no hope to keep up.

Just because some part of LilyPond syntax is defined as music functions,
that does not mean that one can't describe it formally.

The poor guy writing the .ly in Musescore at least has a chance of
designing a single mechanism able to recognize _all_ variants of music
functions that we permit.  That makes it easier for him to _systematize_
his work.

 The broad question for these three is: Syntax that changes depending
 on the definitions of the functions in the input -- good or bad?

Essential to LilyPond's design and expressivity.  That does not mean
that we should not try maximizing the good aspects and minimizing the
bad aspects.

 My prediction is that LilyPond will keep its syntax that requires
 knowledge of the definition of functions to be parsed correctly, thus
 un-importable by other software,

A LilyPond-to-LilyPond conversion would at least rip out user-defined
functions and render the predefined ones, where necessary to represent
music expressions, in a predictable manner.

 .. and that LilyPond will keep its freedom from delimiters, with David
 pulling LilyPond further toward scanning the input independent of
 context.

Again, this is not achievable in the absolute.  But there is still
leeway to do better than we have.  And being able to get along with
fewer modes also means that one does not need to choose between the
respective benefits of several modes, but can profit from the
combination.

 Others certainly frame the broad questions differently, and probably
 see additional broad questions. I think we need to allow some time for
 compromise on these balances between philosophy and practicality.

 Many of the specific items on the GLISS list concern names of things,
 which I think is independent of the broad 

Re: how to make decisions?

2012-09-05 Thread Han-Wen Nienhuys
On Tue, Sep 4, 2012 at 6:22 PM, Trevor Daniels t.dani...@treda.co.uk wrote:

 If I missed your point, can you state it more explicitly?

 I can see now my point was not stated clearly.  It was:

 At this stage in the discussions it is important to be clear about what
 problems we are trying to solve, In this discussion we must always
 consider what it is we are trying to optimise.  I take your point that
 the syntax should be unambiguous, but I don't see why this should
 dominate the discussion.  Improving the syntax from the point of
 view of usability is equally if not more important; certainly those
 considerations and discussions should come before thinking how they
 might be handled in the parser.  When you and Jan first started thinking
 about the LilyPond language I'm sure you began by considering how
 music could best be encoded.  Only later did you devise the precise
 syntax.  We should continue in the same way.

You are largely correct about historical choices, but we made our
choices on a clean slate. The complexity of the grammar has progressed
so far that ambiguity and compatibility is now a major issue.

So far, the only proposal I have seen so far that does not generate
any ambiguity concerns is making \[ postfix.

Furthermore, reiterating what David said, if something is ambiguous or
subtle to the parser, it will be to the user as well, and as such it
affects usability. Compare TeX macros. It may be obvious when you see
some examples, but there is edge case behavior which is difficult to
understand

 So what problems do the users have, exactly?  We should address this
 question first.  Janek apparently has his list, which would be a good start.
 But we should not invent problems where they don't exist.  I've probably
 read every email on the user list for the last 4 years, and inconsistent 
 parser
 rules have not figured prominently.  Another example is the considerable
 discussion so far about pre- and post-fix notation.  Again, has this been a
 problem prominent on the user list?  I don't think so.  So why try to solve 
 it?
 Especially in ways that would screw all existing code.  In fact, I don't think
 /users/ have any serious problems with the syntax as it currently exists,
 other than getting to grips with it initially.

 So I'd be happy to let David continue his work straightening out the
 parser, which is good, and improving the functionally, even better.
 But if we are to have a discussion about syntax let's first list the problems
 we need to solve, and reach agreement on which ones need to be tackled.
 Then we know what it is we are trying to optimise.

I completely support this analysis.

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

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


Re: how to make decisions?

2012-09-05 Thread Francisco Vila
2012/9/4 Trevor Daniels t.dani...@treda.co.uk:
 So what problems do the users have, exactly?  We should address this
 question first.  Janek apparently has his list, which would be a good start.
 But we should not invent problems where they don't exist.  I've probably
 read every email on the user list for the last 4 years, and inconsistent 
 parser
 rules have not figured prominently.  Another example is the considerable
 discussion so far about pre- and post-fix notation.  Again, has this been a
 problem prominent on the user list?  I don't think so.  So why try to solve 
 it?
 Especially in ways that would screw all existing code.  In fact, I don't think
 /users/ have any serious problems with the syntax as it currently exists,
 other than getting to grips with it initially.

Very true, in my opinion.

For newcomers, the whole paradigm is a challenge. However, once they
have the basics, musicians can learn the rules.

\offtopic {
New Spanish users find it difficult to get used to very common
keystrokes which are only under AltGr in Spanish keyboards. So, lesson
zero for the language from a practical POV is:

  
  
  
  {}{}{}{}
  \{} \{} \{}

Now you are prepared to write \relative f { c }.

What I once found embarrassing was to try \key d (and no \major or
\minor afterwards) and fail to compile because, in my mind, in D
means \key d \major with \major by default. Then I learned that \key
has two non-optional arguments and now I think optional arguments are
problematic.

Regarding \relative optional_pitch {}, I think the optional pitch is
very problematic and now it's time to mandate a pitch argument, forbid
the obsolete form \relative {} and convert-ly it into \relative f
{}.

New non-English users often complain for having to remember the
keywords, of course. In my opinion, if you know the keyword by heart,
you also know whether it is prefix or postfix, and its number of
arguments. For me as an user, it would be a disaster to change the
beautiful, consistent, unique backslash character to three different
characters for prefix, postfix and neutral commands. It would generate
by itself more errors that the current status.

Sorry for the

} % off-topic.
-- 
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: how to make decisions?

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

 2012/9/4 Trevor Daniels t.dani...@treda.co.uk:
 So what problems do the users have, exactly?  We should address this
 question first.  Janek apparently has his list, which would be a good start.
 But we should not invent problems where they don't exist.  I've probably
 read every email on the user list for the last 4 years, and
 inconsistent parser
 rules have not figured prominently.  Another example is the considerable
 discussion so far about pre- and post-fix notation.  Again, has this been a
 problem prominent on the user list?  I don't think so.  So why try
 to solve it?
 Especially in ways that would screw all existing code.  In fact, I
 don't think
 /users/ have any serious problems with the syntax as it currently exists,
 other than getting to grips with it initially.

 Very true, in my opinion.

 For newcomers, the whole paradigm is a challenge. However, once they
 have the basics, musicians can learn the rules.

 \offtopic {
 New Spanish users find it difficult to get used to very common
 keystrokes which are only under AltGr in Spanish keyboards. So, lesson
 zero for the language from a practical POV is:

   
   
   
   {}{}{}{}
   \{} \{} \{}

 Now you are prepared to write \relative f { c }.

 What I once found embarrassing was to try \key d (and no \major or
 \minor afterwards) and fail to compile because, in my mind, in D
 means \key d \major with \major by default. Then I learned that \key
 has two non-optional arguments

It has two optional ones.  Being in end position, they can only be
skipped by an explicit \default.  If I remember correctly, skipping just
one caused an error message, so \key \default works, but \key c\default
doesn't.

 and now I think optional arguments are problematic.

 Regarding \relative optional_pitch {}, I think the optional pitch is
 very problematic and now it's time to mandate a pitch argument, forbid
 the obsolete form \relative {} and convert-ly it into \relative f
 {}.

That does not make sense.  The obsolete form \relative {} is to be
converted to \relative c' {} if at all.  I _wish_ it would have been
defined as \relative f {} since that is logically very much related to
leaving the pitch off altogether.  But history has decided otherwise.

-- 
David Kastrup

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


Re: how to make decisions?

2012-09-05 Thread Keith OHara

On Wed, 05 Sep 2012 02:54:38 -0700, Trevor Daniels t.dani...@treda.co.uk 
wrote:


Keith OHara wrote Wednesday, September 05, 2012 9:59 AM


The broad question is: Require delimiters to clarify context (for users,
LilyPond, and software importing LilyPond) -- more or less?


There are many places in LilyPond now where delimiters are necessary
to resolve certain situations but are not generally mandatory.


My brain is maybe not engaging; I can't think of an example of this.  (Repeat 
alternatives ?)


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


Re: how to make decisions?

2012-09-05 Thread Keith OHara
Francisco Vila paconet.org at gmail.com writes:

 For newcomers, the whole paradigm is a challenge. However, once they
 have the basics, musicians can learn the rules.
 
 \offtopic {
  [...]
 } % off-topic.

I found your \offtopic section, Francisco, to be quite relevant to the topic in 
fact.




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


Re: how to make decisions?

2012-09-05 Thread Keith OHara
David Kastrup dak at gnu.org writes:

 I proposed already at one point of time to require writing 4.0 rather
 than 4. for the floating point number.  This will not cure a lot of use
 cases, and we still have the ambiguity between 4 the duration and 4 the
 integer, and -4 the fingering and -4 the integer.
 
 Some of those can be resolved in context, but this does not help for
 conversions, and we also have largely context-free situations, like in
 #{ ... #} or on the right side of assignments.  At the current point of
 time, I can't write things like #{ 4.0\cm #} in appropriate contexts
 because 4.0 is not recognized in notemode as a real number.  Writing
 #{ $4.0 \cm #} would work but it does not exactly win a prize for
 beauty.
 
This is interesting.  LilyPond has used context to know that in
   \paper {line-width = 16.\cm}
the '-' is part of the variable name, the '16.' a decimal number, and the 
\cm a predefined dimension -- as opposed to
cm = {c16. d64 e_- } \new Voice \cm

We have been required to use Scheme to write decimal numbers, everywhere 
outside of \paper{} and other headers
   midiMaximumVolume = #0.7

Is this why you let '-' and '_' in identifiers out of their previous 
confines?  I thought you wanted them in music identifiers. (Others have 
requested the '_' at least.) 

How far do you foresee merging the syntax in \paper {} with that in note-entry 
mode? 

  I've seen complaints in non-Lilypond forums that LilyPond pitch entry 
  is not relative to key signature.  We could accommodate this ...

 My personal take on this is no.  Reason 1 ... 2 ...

Absolutely.  I'll just point out where one person who tried out Lilypond
was innocently transparent in his bewilderment that anyone would call 
out fis in the key of D, and quietly denote the unusual F-natural as f.
http://www.johndcook.com/blog/2009/03/15/typesetting-music-in-latex-and-
lilypond/
Notice the phrase the Fs are sharped rather than the key has F-sharps

  The broad question for these three is: Syntax that changes depending
  on the definitions of the functions in the input -- good or bad?
 
 Essential to LilyPond's design and expressivity.  That does not mean
 that we should not try maximizing the good aspects and minimizing the
 bad aspects.
 

This begs for an expressive example.



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


Re: how to make decisions?

2012-09-04 Thread Trevor Daniels

David Kastrup wrote Monday, September 03, 2012 2:44 PM


 Trevor Daniels t.dani...@treda.co.uk writes:
 
 Graham Percival wrote Monday, September 03, 2012 1:00 PM

 I don't know where to go from here.  I spend a lot of effort
 trying to organize such discussions, because I think that LilyPond
 is a community project.  I think that we should encourage people
 to participate, but telling people ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC might
 discourage people from working.

 It did.
 
 No doubt.  And I don't want to promote a setup which will essentially
 end up as exactly that when viewed honestly.

[snip]

 I am doing the best I can, but I don't really see how I can justly deny
 the underlying gist of the characterization ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC.  And I want
 to avoid creating organizational structures that will cause exactly that
 impression if I am trying to do serious work according to the best of my
 conscience.

David, it wasn't anything /you/ said; it was Han-Wen's reply which
dismissed my cautionary offering as bed-shedding and referring 
to a sneering video about other syntax failures.  Which, incidentally,
illustrated my real point (which he missed) ideally.

You're doing fine!

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


Re: how to make decisions?

2012-09-04 Thread Han-Wen Nienhuys
On Tue, Sep 4, 2012 at 5:03 AM, Trevor Daniels t.dani...@treda.co.uk wrote:
 I don't know where to go from here.  I spend a lot of effort
 trying to organize such discussions, because I think that LilyPond
 is a community project.  I think that we should encourage people
 to participate, but telling people ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC might
 discourage people from working.

 It did.

 No doubt.  And I don't want to promote a setup which will essentially
 end up as exactly that when viewed honestly.

 [snip]

 I am doing the best I can, but I don't really see how I can justly deny
 the underlying gist of the characterization ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC.  And I want
 to avoid creating organizational structures that will cause exactly that
 impression if I am trying to do serious work according to the best of my
 conscience.

 David, it wasn't anything /you/ said; it was Han-Wen's reply which
 dismissed my cautionary offering as bed-shedding and referring
 to a sneering video about other syntax failures.  Which, incidentally,
 illustrated my real point (which he missed) ideally.

I'm sorry - I have been doing these kinds of syntax discussions for
too long, and have too little time for them now.

The video is intended to illustrate how a small features of a language
may make sense (ie. was created with the best intentions) when viewed
on small scale, but makes the language as a whole confounding.  For
javascript, for example, + can implicitly convert to string, which is
neat for applications which do a lot of string manipulations, but it
has the side effect that

  [1,2] + [2,3]

evaluates to

  1,22,3

rather than

  [1,2,2,3]

which is surprising to many programmers.

More to the point of lilypond, I'm trying to get across that the
problems of new syntax constructs are usually not in the examples that
motivate them, but rather in other areas of the language. An example
that passed the list recently is
having digits in identifiers, breaks compaitbility since \skip4 now
would be a identifier dereference.

My request for having parser patches is also grounded in this. Basic
problems with most syntax changes become readily apparent if you try
to change the parser grammar; since they often lead to ambiguities
which Bison cannot resolve.

Such considerations make me skeptic of changes that are explained by
way of example, especially if they have a broad impact. Such changes
can often not be implemented sanely.

If I missed your point, can you state it more explicitly?

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

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


Re: how to make decisions?

2012-09-04 Thread Trevor Daniels

Han-Wen, you wrote Tuesday, September 04, 2012 2:58 PM
Subject: Re: how to make decisions?


 On Tue, Sep 4, 2012 at 5:03 AM, Trevor Daniels t.dani...@treda.co.uk wrote:

 David, it wasn't anything /you/ said; it was Han-Wen's reply which
 dismissed my cautionary offering as bed-shedding and referring
 to a sneering video about other syntax failures.  Which, incidentally,
 illustrated my real point (which he missed) ideally.
 
 I'm sorry - I have been doing these kinds of syntax discussions for
 too long, and have too little time for them now.

I can appreciate that.  Thanks for following this up.
 
 The video is intended to illustrate how a small features of a language
 may make sense (ie. was created with the best intentions) when viewed
 on small scale, but makes the language as a whole confounding.  For

I'm quite familiar with the concepts of grammar, parser design and
BNF.  In the '60s I learnt my first programming language, Atlas
Autocode, largely by reading its formal description used by the
compiler-compiler on the Ferranti Atlas computer at Manchester.

 If I missed your point, can you state it more explicitly?

I can see now my point was not stated clearly.  It was:  

At this stage in the discussions it is important to be clear about what 
problems we are trying to solve, In this discussion we must always 
consider what it is we are trying to optimise.  I take your point that
the syntax should be unambiguous, but I don't see why this should
dominate the discussion.  Improving the syntax from the point of
view of usability is equally if not more important; certainly those
considerations and discussions should come before thinking how they
might be handled in the parser.  When you and Jan first started thinking 
about the LilyPond language I'm sure you began by considering how 
music could best be encoded.  Only later did you devise the precise 
syntax.  We should continue in the same way.

So what problems do the users have, exactly?  We should address this 
question first.  Janek apparently has his list, which would be a good start.
But we should not invent problems where they don't exist.  I've probably 
read every email on the user list for the last 4 years, and inconsistent parser
rules have not figured prominently.  Another example is the considerable 
discussion so far about pre- and post-fix notation.  Again, has this been a 
problem prominent on the user list?  I don't think so.  So why try to solve it?
Especially in ways that would screw all existing code.  In fact, I don't think
/users/ have any serious problems with the syntax as it currently exists,
other than getting to grips with it initially.

So I'd be happy to let David continue his work straightening out the
parser, which is good, and improving the functionally, even better.
But if we are to have a discussion about syntax let's first list the problems
we need to solve, and reach agreement on which ones need to be tackled.
Then we know what it is we are trying to optimise.

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


Re: how to make decisions?

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

 On Mon, Sep 03, 2012 at 01:24:22AM -0300, Han-Wen Nienhuys wrote:
 On Sat, Sep 1, 2012 at 4:39 PM, Graham Percival
 gra...@percival-music.ca wrote:
 
  The meta-target is after spending 5 years very publicly
  telling people *not* to talk about changing the syntax because
  we would do so 'in a year or two', I think I should encourage
  such discussions..  I mean, people trusted me when I said
  that there
 -snip- 
 Whatever you have been saying in the past is irrelevant.

 Yes, I'm definitely getting that impression.

For what it is worth, I disagree with Han-Wen here.  There is sadly a
grain of truth to it, but it is not the whole story, and it most
certainly is not the moral of the story.

 As you may recall, I launched a proposal to discuss GLISS:
 http://lists.gnu.org/archive/html/lilypond-devel/2012-07/msg00639.html
 You replied with a single email:
 http://lists.gnu.org/archive/html/lilypond-devel/2012-07/msg00786.html
 Discussion continued: there seems to be fairly broad support for
 _some_ form of standardization:
 http://lists.gnu.org/archive/html/lilypond-devel/2012-07/msg00874.html
 The final proposal was posted:
 http://lists.gnu.org/archive/html/lilypond-devel/2012-08/msg00191.html
 with no substantial disagreement.

 That proposal became:
 http://lilypond.org/~graham/gop/gop_4.html


 I don't know where to go from here.  I spend a lot of effort
 trying to organize such discussions, because I think that LilyPond
 is a community project.  I think that we should encourage people
 to participate, but telling people ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC might
 discourage people from working.

This is really a hard problem.  What makes up the community and a sense
of community, is a feeling of empowerment and mutual respect.  LilyPond
gives power to musicians to express music.  And this music can be passed
on and shared, and one can discuss the ways to create it, and exchange
experience.  And the developers are responsible for giving the users
that sense of empowerment.  But the actual power the users can wield
over developers sensibly is rather undirected, in the way the actual
power art critics can wield over the work an artist creates.

If a customer says I like it or I don't like it, this is sort of a
feedback.  If a customer says you should use the brush X more often or
I think the perspective is off in this corner or let me tell you how
I think you should paint the sky, the potential for an actual
improvement is rather limited.  This does not imply a lack of respect
for the critic's or customer's opinion.  It is just that the problem
space has a lot of its own inner logic that is not always easy to
represent.

 The idea behind having an explicit policy proposal, following by at
 least two updates of the proposal, is to allow everybody to see just
 what is being considered and to have lots of time to make objections.
 If some people ignore the later proposals (especially the one marked
 final) and then object a month later, the whole process becomes a
 total waste of time.

 Granted, some people might see this as a good thing.

I have the serious fear that this will either lead to a sham process
and/or result in future problems.  And I definitely admit that it would
be mostly a relief to me if the whole process turned out a total waste
of time, and it would not be honest of me to encourage decision
structures that I see in conflict with the manner in which I strive to
arrive at the best results I consider to be in public interest.

I don't have a good answer here, and I am not particularly happy with
suggesting that the work I end up doing will not likely be shaped much
by committee or community decisions but rather mostly by my own
conscience and programmer instincts.  Which, in turn, are shaped by the
perceived needs of the community.

If you take a look at how, for example, religious communities work by
and large, you'll find that most people are guided by their own
conscience, but still feel being a part of a community, even though
there are no democratic decision processes about what aspect of a deity
to believe in.

 That's what I want to find out now.  Is there any point to having
 policy discussions in the form of GOP ?

I think they have their place, but will probably not work for governing
everything.

 One of the neat things about Waltrop was seeing a range of
 developers and users.  Some people were very concerned about
 Baroque music; others preferred pushing the boundaries of paper
 notation (and even going beyond static notation into video!).
 Some people ate meat, some people drank alcohol, some people were
 devoutly religious, some people were atheists.  Some people
 organized crowd-sourcing of a book of vocal scores; some people
 write algorithmic music with write-once, read-never ly files.
 Some people wake up early, some sleep in.  Some people work on
 converters to/from 

Re: how to make decisions? (was: [GLISS] differentiatingpre/post/neutral commands)

2012-09-03 Thread Trevor Daniels

Graham Percival wrote Monday, September 03, 2012 1:00 PM

 That proposal became:
 http://lilypond.org/~graham/gop/gop_4.html
 
 I don't know where to go from here.  I spend a lot of effort
 trying to organize such discussions, because I think that LilyPond
 is a community project.  I think that we should encourage people
 to participate, but telling people ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC might
 discourage people from working.

It did.

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


Re: how to make decisions? (was: [GLISS] differentiating pre/post/neutral commands)

2012-09-03 Thread Han-Wen Nienhuys
On Mon, Sep 3, 2012 at 9:00 AM, Graham Percival
gra...@percival-music.ca wrote:
 On Mon, Sep 03, 2012 at 01:24:22AM -0300, Han-Wen Nienhuys wrote:
 On Sat, Sep 1, 2012 at 4:39 PM, Graham Percival
 gra...@percival-music.ca wrote:

  The meta-target is after spending 5 years very publicly
  telling people *not* to talk about changing the syntax because
  we would do so 'in a year or two', I think I should encourage
  such discussions..  I mean, people trusted me when I said
  that there
 -snip-
 Whatever you have been saying in the past is irrelevant.

 Yes, I'm definitely getting that impression.

I'm sorry for saying this; it was too harsh.

That said, I am confused. I thought the purpose was to stabilize
syntax. But at the same time, I read in another mail, that you would
like to consider writing all music functions with a / prefix rather
than \.

How can I interpret that as 'stabilising'? It is a large change that
will invalidate almost all existing files, will have interactions with
existing parts (/ is not unused), and will probably have repercussions
we only understand after it's been rolled out for some time.

As far as I can see, putting the syntax up as subject for discussion
has generated lots of suggestions along the lines of let us throw
away what we have and start from scratch, often without any clue of
how to do this on a technical level.

 That's what I want to find out now.  Is there any point to having
 policy discussions in the form of GOP ?  If not, then how else
 should we organize ourselves?

Part of my beef with the GOP mediated discussion here is that just me
and David have a grasp of how things work. Get more people
knowledgeable and there can be discussion.

 One of the neat things about Waltrop was seeing a range of
 developers and users.  Some people were very concerned about
 Baroque music; others preferred pushing the boundaries of paper
 notation (and even going beyond static notation into video!).
 Some people ate meat, some people drank alcohol, some people were
 devoutly religious, some people were atheists.  Some people
 organized crowd-sourcing of a book of vocal scores; some people
 write algorithmic music with write-once, read-never ly files.
 Some people wake up early, some sleep in.  Some people work on
 converters to/from ly and musicxml, some people worked on
 online/realtime score generation.

 The LilyPond community has some shared values, some opposing
 values, but an overall interest in the specific code base called
 lilypond.  How can we work on that together, while respecting
 our individual differences?  How can we encourage and keep
 ourselves motivated to improve LilyPond?

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

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


Re: how to make decisions?

2012-09-03 Thread Han-Wen Nienhuys
On Mon, Sep 3, 2012 at 10:18 AM, David Kastrup d...@gnu.org wrote:
[..]

Thanks for saying all of this; I think it has been very well put.

 I don't have a good answer here, and I am not particularly happy with
 suggesting that the work I end up doing will not likely be shaped much
 by committee or community decisions but rather mostly by my own
 conscience and programmer instincts.  Which, in turn, are shaped by the
 perceived needs of the community.

That may actually be a boon; despite best intentions, design by
committee usually does not lead to good designs.

 overall scheme, and also make some things easier to get done with.  With
 regard to _designing_ the language of LilyPond, I think we are better
 off discussing and relating our goals, and seeing where this takes
 development.

+1

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

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


Re: how to make decisions?

2012-09-03 Thread David Kastrup
Trevor Daniels t.dani...@treda.co.uk writes:

 Graham Percival wrote Monday, September 03, 2012 1:00 PM

 That proposal became:
 http://lilypond.org/~graham/gop/gop_4.html
 
 I don't know where to go from here.  I spend a lot of effort
 trying to organize such discussions, because I think that LilyPond
 is a community project.  I think that we should encourage people
 to participate, but telling people ok, thanks for your work on
 XYZ, now get lost while the real developers talk about ABC might
 discourage people from working.

 It did.

No doubt.  And I don't want to promote a setup which will essentially
end up as exactly that when viewed honestly.

Trying to empower non-programmers by handing them the decisions over
what the programmers should be achieving is something I just don't see
working out to the best interests of either.  The only thing I can think
of for evening out the balance is to make it easier for non-programmers
themselves to bring LilyPond to do what they want it to be doing.  That
requires documentation, and it requires moving LilyPond in a direction
where working with and on it with confidence becomes easier.

This kind of empowerment has been the main theme of most of my work on
music functions and Scheme/LilyPond interaction.  It is, however,
ongoing work, and I don't think I am doing anybody a favor by keeping it
half-finished.

I don't have good answers with regard to the questions what our policies
should be focusing on and ruling on.  And I am totally bad working
according to instructions myself.  But I definitely see that many people
can be more productive by having good guidelines to work with.

I am doing the best I can, but I don't really see how I can justly deny
the underlying gist of the characterization ok, thanks for your work on
XYZ, now get lost while the real developers talk about ABC.  And I want
to avoid creating organizational structures that will cause exactly that
impression if I am trying to do serious work according to the best of my
conscience.

-- 
David Kastrup

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


Re: how to make decisions? (was: [GLISS] differentiating pre/post/neutral commands)

2012-09-03 Thread Janek Warchoł
On Mon, Sep 3, 2012 at 3:34 PM, Han-Wen Nienhuys hanw...@gmail.com wrote:
 Part of my beef with the GOP mediated discussion here is that just me
 and David have a grasp of how things work. Get more people
 knowledgeable and there can be discussion.

Well, is there a better ways for us (other people) to get
knowledgeable than to watch you two discuss and ask questions of our
own during that discussion?
No offence meant.  I really think that's the way to do it: we all
discuss, and - by the virtue of your knowledge - you lead the
discussion.

Janek

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


Re: how to make decisions?

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

 On Mon, Sep 3, 2012 at 3:34 PM, Han-Wen Nienhuys hanw...@gmail.com wrote:
 Part of my beef with the GOP mediated discussion here is that just me
 and David have a grasp of how things work. Get more people
 knowledgeable and there can be discussion.

 Well, is there a better ways for us (other people) to get
 knowledgeable than to watch you two discuss and ask questions of our
 own during that discussion?
 No offence meant.  I really think that's the way to do it: we all
 discuss, and - by the virtue of your knowledge - you lead the
 discussion.

If you want to try messing with the parser, the integrate chordmode
into notemode topic is a good starting point.  Most of the reported
parser conflicts in that process should bear a recognizable relation to
an actual syntax issue.

Of course, this suggestion is entirely unselfish, and nobody should
suspect otherwise.

-- 
David Kastrup

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