Abjad, which is a Python library, is probably worth study here for its integration and general re-embrace of Lilypond as a compositional tool.
http://www.projectabjad.org/ Note that in Lilypond one can define a Scheme function over for example a set of notes. Al Matthews -- http://fatmilktv.com On Aug 21, 2013 12:41 PM, "Stephen Tetley" <stephen.tet...@gmail.com> wrote: > > > "Here's one I did earlier..." > > http://www.flickr.com/photos/44929957@N03/4459628487/lightbox/ > > This is Haskore implementation of Chick Corea's "Child Song 6" rendered to LilyPond - I don't imagine Mr. Corea's publishers will be sending me a takedown request any time soon. > > There's a lot missing from Haskore that is needed to make good scores - the renderer of the above took a lot of effort with metrical grouping but the result is still abysmal. > > I doubt mathematics can help (common practice) music typesetting much - Western notation has had a thousand years to develop without the constraint of a regular syntax; so if Lilypond is horrible it is mostly the fault of what it tries to typeset (it does make some unwarranted mistakes like over-restricting the characters it can use for "variable" names and its parenthesizing is horrible). > > > On 21 August 2013 14:05, Johannes Waldmann <waldm...@imn.htwk-leipzig.de> wrote: >> >> I tried using lilypond ( http://www.lilypond.org/ ) >> for typesetting of sheet music. >> >> While the output looks nice, the input language IMHO is quite horrible, >> because the underlying data/execution model is underspecified. >> For some parts, it tries to describe the logical structure of the score; >> but for others, the layout; and in addition it has several non-obvious >> context-dependencies (but see below), preventing modularity. >> >> Is there a better option? E.g., starting from a clear mathematical model, >> as in Haskore, and use lilypond only as a PDF rendering engine? >> >> Do I want hly / hts perhaps? http://rd.slavepianos.org/?t=hly >> >> >> As I see it, the main high-level design problem >> is that the source language needs partial evaluation annotations >> for abstractions applications: sometimes they should be expanded >> (for MIDI rendering, always) and sometimes not (in typesetting, >> to create repetition marks instead of actually repeating notes). >> >> >> PS: I agree that some of lilypond's context dependencies >> (relative pitch, implicit note length) do really save >> large amounts of tedious typing: "c4 e g a c1" is much more economical >> than "[c 1 qn, e 1 qn, g 1 qn , a 1 qn, c 2 fn]" >> which I guess is the Haskore equivalent. >> >> >> >> >> _______________________________________________ >> Haskell-Cafe mailing list >> Haskell-Cafe@haskell.org >> http://www.haskell.org/mailman/listinfo/haskell-cafe > > > > _______________________________________________ > Haskell-Cafe mailing list > Haskell-Cafe@haskell.org > http://www.haskell.org/mailman/listinfo/haskell-cafe >
_______________________________________________ Haskell-Cafe mailing list Haskell-Cafe@haskell.org http://www.haskell.org/mailman/listinfo/haskell-cafe