[Haskell-cafe] haskore -> lilypond -> typesetting?

Stephen Tetley stephen.tetley at gmail.com
Wed Aug 21 18:40:04 CEST 2013


"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 <waldmann at 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 at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>
-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20130821/741a7821/attachment.htm>


More information about the Haskell-Cafe mailing list