lilypond-devel
[Top][All Lists]
Advanced

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

Re: Issue 37 - new work


From: David Kastrup
Subject: Re: Issue 37 - new work
Date: Fri, 28 Jan 2011 14:54:15 +0100
User-agent: Gnus/5.13 (Gnus v5.13) Emacs/24.0.50 (gnu/linux)

Graham Percival <address@hidden> writes:

> On Fri, Jan 28, 2011 at 02:38:56PM +0100, David Kastrup wrote:
>> Mike Solomon <address@hidden> writes:
>> 
>> > I cooked up this musical example that shows both responses to upward
>> > and downward pressure to give you an idea of where I'm coming from.
>> >
>> > Is there a way to get this type of collision avoidance w/o a 2nd
>> > quanting pass?
>> 
>> Actually, it would appear a third pass would be nice in order to put
>> sympathetic pressure on the lowest beam, decreasing the discrepancy of
>> its stems with the adjacent (highly compressed) stem set.
>
> Hmm...
>   lilypond -p 0 my_file.ly    % for quick work
>   lilypond -p 2 my_file.ly    % for a draft to print out
>   lilypond -p 9 my_file.ly    % for the final score
> ;)
>
>
> Despite the joke, this is a semi-serious suggestion that I've been
> hoping that somebody might be interested in for years.  There's a
> bunch of options that we can enable or disable to change the
> amount of processing power; it would be really nice if one (or
> more) people seriously looked into this, and provided an easy way
> to change between the "optimization" levels.

I think it makes more sense to focus on optimal typesetting via the
usual efficient shortest graph traversal algorithm.

If that's not feasible due to code complexity, it should be made so by
proper refactoring and providing a suitable framework making it possible
to express the relevant parameters and decisions locally and separately
even though their influence is global.

The alternative, doing multiple passes consisting of only locally
optimal behavior, sounds good as a "practical" approach not touching
"working areas".

However, going there leads to uncontrollably exploding execution times
with diminuishing returns.

-- 
David Kastrup



reply via email to

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