@c -*- coding: utf-8; mode: texinfo; -*- @ignore Translation of GIT committish: FILL-IN-HEAD-COMMITTISH When revising a translation, copy the HEAD committish of the version that you are working on. For details, see the Contributors' Guide, node Updating translation committishes.. @end ignore @node divide-and-conquer @unnumberedsec Plan de campagne Since content and form of a score are separate, we have to match that in the design of software. Hence, the basic blueprint of our program should follow this scheme @multitable @columnfractions .3 .3 .3 @item @sourceimage{simple-notation,,,.png} @tab @result{} @tab @code{@{ c'4 d'8 @}} @item 1. form @tab 2. translation @tab 3. content @end multitable In effect, we are conquering the problem by dividing it into subproblems @enumerate 1 @item Typography: @strong{where} to put symbols @item Notation: @strong{what} symbols to produce @item Representation: how to @strong{encode} music @end enumerate Finally, whenever you subdivide a problem, a new problem is created, @enumerate 4 @item Architecture: glue everything @strong{together} @end enumerate @divClass{float-right} Next: @ref{implementing-notation,Impressive, but does it also work in theory}? A practical approach to capturing notation. @divEnd