"m...@mikesolomon.org" <m...@mikesolomon.org> writes:

> It is true that line-breaking is a centralized option based on what
> the toplevel-book-handler is, but it should be as lightweight as
> possible.  I think that the smaller we can keep paper-book.cc and
> paper-score.cc, the better.  I've been saying this for a couple years,
> but I'd prefer for Book and PaperScore to be grobs so that even they
> could use the callback model.  At that point, line breaking could just
> be controlled by callbacks.

Distributing algorithms in that manner without central
control/arbitration means O(n^2) complexity at least.  It tends to lend
itself better to parallelizing, but when your average system does not
have thousands of processors, that advantage remains very limited.

Of course, a half-baked not-well-understood global hackery touching
stuff in lots of indiscriminate places is not what this is about.  The
interdependencies need to be stated as local relations, of course.  It
is just that the resolution is to be done globally.  Of course this
necessitates that the dependencies are formulated in a _systematic_
manner and in the same way everywhere, using well-crafted
interfaces/ways of specification rather than in willy-nilly adhoc
jumbles of callbacks.

-- 
David Kastrup


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

Reply via email to