Friday, September 18, 2015

Payasan

I've implemented "chordmode" for Payasan patterned after LilyPond's chordmode.

Chordmode is intended as an intermediate layer for working with chords - LilyPond's chordmode is a bit inscrutable at some points and I believe I have a simpler representation for building and manipulating chords.

The implementation points to quite a few horrors in the module organization of Payasan that I will need to address. I already have 70 modules in the src directory which is excessive and I'll have to do something about combining some of them.


Monday, September 14, 2015

Payasan

Most of the work is now in place for LilyPond percussion notelists. Some work on rendering is still outstanding.

Sunday, September 13, 2015

Payasan

I've started to add support for LilyPond drum pitches. This work should point out what bits of Payasan need parameterizing on Pitch. The syntax is already polymorphic on pitch and duration, but so far I haven't treated the parsers and renderers systematically.


Friday, September 11, 2015

Payasan

I've implemented "full score" output for ABC and LilyPond rather than just output of note list fragments.

It is an expectation of Payasan that the output will be hand-edited after generation if the user wants to create proper scores. However, to "debug" note lists after they have been built, transformed, etc. a user needs to generate a "full score" that can be automatically rendered by LilyPond or ABC to see their work.


Thursday, September 10, 2015

Payasan

I've added transformations for augmentation and diminution to the monophonic note list.

It is a key goal that Payasan should support musical transformations so having these two implemented is a nod in favour of the utility of this version of Payasan.

Sunday, September 6, 2015

Payasan

I'm working towards adding debugging to the translation steps (LilyPond pitch conversion has had a bug for the best part of a week). I'm not sure what the API should be, but at least with the current temporary implementation I can see where the pitch conversion bug occurs.

Friday, September 4, 2015

Payasan

I'm working towards translating to ABC and LilyPond output via generic traversals over the Beam Syntax. This opens the door to special notations in LilyPond output like drum notes.

Thursday, September 3, 2015

Payasan

I've added a very rough implementation of Humdrum-like output printing. The output is for debugging purposes (there is a problem with pitch conversion to or from LilyPond) and so doesn't attempt to properly match Humdrum: the output has to be readable (obviously) and decipherable i.e. it has to preserve information so it works for showing bugs.

Strictly following Humdrum would impede the second goal.

Wednesday, September 2, 2015

Payasan

I've added interval addition and subtraction as per the algorithm in Francois Pachet's "An Object-Oriented Rerpresentation of Pitch-Classes, Intervals, Scales and Chords: The basic MusES" (page 9).

Both are a bit untested, I really should write Quick Check properties and tests at some point.

Tuesday, September 1, 2015

Payasan

I've worked on Pitch and Intervals as a prelude to sorting out the LilyPond relative pitch transformation.

A proper set of functions to manipulate pitches and intervals should provide the tools to encode the relative pitch transformation fairly simply. My previous ad hoc attempts were just confusing.

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.