On 9/26/2017 10:59 PM, David Nalesnik wrote: > Hi all, > > I wanted to share something which I think illustrates the power that > Lily has over other popular notation software. > > I spend a lot of time teaching partwriting to undergraduate music > majors, and recently, suddenly, it occurred to me that anything as > rule-bound as correct partwriting (I stress "correct" as opposed to > "artistic" or even "interesting") would naturally be the province of > computers. A computer should be able to instantly provide all > possible solutions to a problem with so many constraints. > > (1) a rather constrained range for the voice parts (a central octave > for upper parts, slightly more for the bass--perhaps suitable to a > beginning or an ending); > (2) all parallel perfect intervals are disallowed; > (3) consecutive fifths/octaves by contrary motion are disallowed; > (3) approach to perfect fifths and octaves in outer voices by similar > motion is disallowed unless the soprano moves by step ("direct fifths > and octaves"); I'm aware that other practices may be more > severe--easy to incorporate stricter requirements. (See how I deal > with parallels.) > (4) voice parts may not cross or overlap. > (5) adjacent upper voices may never be more than an octave apart; > (6) certain intervals are disallowed (I do allow the diminished 5th > for the sake of the lovely fa-ti-do in the example progression); > (7) the bass is prevented from leaping over an octave (never thought > of this until I saw preliminary output); > (8) all chords are complete; > (9) the root is doubled. > (10) the leading tone must resolve to tonic unless it is in an inner > voice, when it may drop to the dominant pitch. > > > Anyway, sorry to go on so long. FWIW... > > Comments welcome! > > Best, > > David >
David, This looks awesome...LilyPond is so powerful and capable for many applications! Thank you for sharing this with us!
_______________________________________________ lilypond-user mailing list lilypond-user@gnu.org https://lists.gnu.org/mailman/listinfo/lilypond-user