Copperbox revision 3034.
I've added a new note list fragment builder (Legato) that improves on Advance.
Although Advance is conceptually fairly simple, it is not so musically useful. Because it places events end-to-end it cannot account for staccato phrases - notes sounding for shorter than their notated durations - and legato / sostenuto phrases - notes sustained for longer than their notated duration. Despite being called Legato (for want of a name) the new fragment builder enables both.
Wednesday, November 27, 2013
majalan
Copperbox revision 3033.
I've changed the representation of PchEvent to be a function : pitch x duration -> Event rather than pitch -> Event. This eliminates yesterday's worry about needing a DrnEvent (now unnecessary) and allows a fairly consistent note list style if I use the redundant note combinator.
I've changed the representation of PchEvent to be a function : pitch x duration -> Event rather than pitch -> Event. This eliminates yesterday's worry about needing a DrnEvent (now unnecessary) and allows a fairly consistent note list style if I use the redundant note combinator.
Tuesday, November 26, 2013
majalan
Copperbox revision 3032.
I've implemented trill as a combinator rather than a so called - by me - "constructor". Also I've tidied up Demo02 a little.
I'm wondering if Majalan needs object DrnEvent (wrapping : duration -> Event) as a intermediary between PchEvent > DrnEvent > Event. The chordal and trill combinators already use an unwrapped version and the unwrapped-ness adds clutter to user code.
I've implemented trill as a combinator rather than a so called - by me - "constructor". Also I've tidied up Demo02 a little.
I'm wondering if Majalan needs object DrnEvent (wrapping : duration -> Event) as a intermediary between PchEvent > DrnEvent > Event. The chordal and trill combinators already use an unwrapped version and the unwrapped-ness adds clutter to user code.
Monday, November 25, 2013
majalan
Copperbox revision 3031.
I've added a PchEvent object (a newtype wrapped function : pitch -> Event) and implemented chordal as a combinator. PchEvent should allow other combinators for trills, arpeggios etc. and solve the scaling problem of the previous post.
I've added a PchEvent object (a newtype wrapped function : pitch -> Event) and implemented chordal as a combinator. PchEvent should allow other combinators for trills, arpeggios etc. and solve the scaling problem of the previous post.
majalan
Copperbox revision 3030.
First attempt at trills.
It looks like the idiom used yesterday for chords (defining a new event constructor) isn't really going to be scalable once I start to account for chords, trills, arpeggios etc. It looks like I am going to need a special version of Event for pitched events...
First attempt at trills.
It looks like the idiom used yesterday for chords (defining a new event constructor) isn't really going to be scalable once I start to account for chords, trills, arpeggios etc. It looks like I am going to need a special version of Event for pitched events...
Sunday, November 24, 2013
majalan
Copperbox revision 3029.
First test of chords in a score. At the moment I define an second chord version of an instrument's event constructor - as pitch is one parameter out of several for an instrument (in some cases instruments may even be unpitched) I'm not sure a can write a chord combinator that takes an event and applies it to a list of pitches.
First test of chords in a score. At the moment I define an second chord version of an instrument's event constructor - as pitch is one parameter out of several for an instrument (in some cases instruments may even be unpitched) I'm not sure a can write a chord combinator that takes an event and applies it to a list of pitches.
Subscribe to:
Posts (Atom)
Blog Archive
About Me
- Stephen Tetley
- 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.