lilypond-devel
[Top][All Lists]
Advanced

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

Re: pure/impure?!?!


From: Mike Solomon
Subject: Re: pure/impure?!?!
Date: Sun, 24 May 2015 12:46:34 +0300

> On 24 May 2015, at 11:55, David Kastrup <address@hidden> wrote:
> 
> 
> Well, the current setup is too contorted to be maintainable and safely
> extensible.  Whenever somebody tries to improve spacing or cross-staff
> or whatever somewhere, we get a series of exploding things until stuff
> settles down again.  Basically, the inherent complexity of the task is
> spread too thin across the code.  It needs to get consolidated into one
> place if we want to get to a point where people specializing in
> typography rather than low-level code tweakery and debugging can hope to
> improve LilyPond's aesthetics.
> 
> Anyway: how do impure functions reference (and trigger?) line breaks?


Unpure functions don’t trigger line breaking. Line breaking is triggered in 
system.cc <http://system.cc/> and then unpure functions are called after that.
The difference between the two function categories are when they are used: pure 
is used during the preprocessing stage and unpure after line breaking.

There is definitely a lot of work that can be done to consolidate these 
decisions, like you’re saying: it’s been slowly spread across the code base for 
10ish years.
The complexity of the task is high, thought - it’d require a major rewrite of a 
lot of things.

Cheers,
~Mike

reply via email to

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