Mike Solomon <m...@mikesolomon.org> writes: > On Dec 10, 2013, at 6:32 PM, David Kastrup <d...@gnu.org> wrote: > >> Refactoring the page building into a stage where its basic operations >> can be done from Scheme/LilyPond would be a first big step towards being >> able to experiment with different schemes without recompilation. >> >> The next big step would be to create a modular structure where it is not >> necessary to replace the page builder for a feature like footnotes, but >> where you can plug in elements like footnotes by writing code for them >> and plugging this code into a single, extensible page builder with >> appropriate interfaces. >> >> Then we can have, without recompilation, tools that provide smarter >> footnotes, different layouts of them, margin notes and other stuff >> without interfering with other tools available for the page composition. > > I agree that this is a great candidate for refactoring. I think one > way to frame the problem would be to imagine that someone wanted to > take on this task, which is pretty ambitious and would likely require > a lot of subtasks in extracting out the page breaker. Each of these > subtests would require independent verification, and it is likely that > the entire project could be done separately from the main branch. It > would probably require extensive user testing to make sure that all > the kinks were ironed out. > > Let’s say that I set up a version of LilyPond called > modular-footnote-LilyPond in which I develop this modularity. How, if > at all, can users test this before it makes it into the development > version?
Uh, not really? That was sort of my point. Refactoring into extensible form is a prerequisite to development of features that are not tightly tied into a particular binary, requiring its recompilation. But there won't be significant resistance to that kind of work while we are in the unstable phase of a development version. -- David Kastrup _______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user