Thursday, June 12, 2008

Bala

Copperbox revision 137.

I've added a version of Abc format in the 'final tagless' style. As Abc has a smaller grammar than LilyPond it has been easier to experiment with this version. Notably I've worked out fitting together different elements of the grammar with three operators inspired by Text.Html in the standard libraries.

(+++) concatenates elements at the same 'level' in the grammar.

(#) is reversed function composition (.) and it is used to add optional attributes to elements. For instance a note may have an optional octave specification and accidental.

(<<) is ($) but with higher precedence, so that elements that are n-ary functions can be applied to their sub-elements without needed extraneous parentheses.

Blog Archive

About Me

My photo
Disambiguating biog as there are a few Stephen Tetley's in the world. I'm neither a cage fighter or yachtsman. I studied Fine Art in the nineties (foundation Bradford 1992, degree Cheltenham 1992 - 95) then Computing part-time at Leeds Met graduating in 2003. I'm the Stephen Tetley on Haskell Cafe and Stackoverflow.