Monday, March 31, 2008

Bala

Copperbox revision 119.

More work on Chords - again this work is partial so is currently comment out. However it revealed another problem with intervals - I couldn't count up from one pitch to another with an arithmetic distance. So I've added a new function, to do this:

arithmeticStep :: Pitch -> Int -> Pitch

This has shown up a problem with the Pitch instance of`addSemi` whereby the pitch spelling goes wrong. I haven't correct this at the moment as I'm not sure if my obvious fix is correct (the obvious fix is to keep the pitch letter the same and simply alter the accidental).

Sunday, March 30, 2008

Bala

Copperbox revision 118.

Added a module to print guitar chords in ascii format, an example:


x
8.+-+-+-+-+-+
| @ | @ | @
+-+-+-+-+-+
| | | | @ |
+-+-+-+-+-+
| | @ | | |
+-+-+-+-+-+

Saturday, March 29, 2008

Bala

Copperbox revision 117.

Another revision of the Interval module. This time I do recursive counting rather than try to use numbers directly for addition and subtraction.

The new version is simpler, but I still haven't written useful QuickCheck tests for it.

Bala

Copperbox revisions 115 & 116.

115 - merged changes from the bala-pitchrep2 branch onto the trunk.

116 - added a new format module to print ascii art pianos - useful for counting intervals manually.

Bala

Copperbox revision 114.

The latest iteration of intervals had bugs again. I've got rid the ones I've noticed, but really they need to be designed out rather than fixed. There's still a bit of work to do on intervals.

Monday, March 24, 2008

Bala

Copperbox revision 113.

Some more work on intervals - a new function extr (which needs renaming) it generates the suceeding pitch by adding an interval.

extr :: Pitch -> Interval -> Pitch

Also a bit of work on pitch spelling, and some work on a new chord representation. The chord representation is just a sketch and currently hidden inside comments.

Bala

Copperbox revisions 111 & 112.

Revision 112 - Reinstated the interval naming functions in the module Interval.
(Note they could do with better names).

Revision 111 - Some tidying up of the Pitch code - the redundant type class SemiToneCount has been removed (it is replaced by the class Semitones).

New functions added to the interval Interval module to find the arithmetic distance between two pitches and to build an interval from two pitches (arithmeticDistance and buildInterval).

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.