Alex McLean

Making music with text

Category Archives: haskell

Demonstrating tidal

by Alex on March 2, 2013

After posting at length about the history of my musical pattern representation, I thought I’d better show some demos and explain a bit about how it works in practice. Demonstrating music tech is difficult, because it seems to be impossible to listen to demos without making aesthetic judgements. The below is not meant to be [...]

Haskell patterns ad nauseam

by Alex on February 28, 2013

TL;DR I’m now describing algorave music as functions from time ranges to lists of events, with arbitrary time precision, where you can query continuously varying patterns for more detail by specifying narrower time ranges. For more practical demo-based description of my current system see this post. I’ve been restructuring and rewriting my Haskell pattern library [...]

Patterns again

by Alex on September 18, 2012

Back to patterns in Haskell, an unruly puzzle that’s run through the last few years of my life, trying to work out how I want to represent my music.  Here’s the current state of my types: data Pattern a = Sequence {arc :: Range -> [Event a]} | Signal {at :: Rational -> [a]} type [...]

smoothdirt

by Alex on March 14, 2012

I’ve got some sounds out of my new live coding system, codenamed “smoothdirt”.  Here’s an mp3 for you.  The sounds are triggered with some C and structured and scheduled with some Haskell.  Plenty more to do, but already really happy hearing embedded juxtoposition of timescales, smooth multichannel panning (2 channels in this test, but I’m playing [...]

Patterns in Haskell revisited

by Alex on March 6, 2012

A while back I came up with this way of representing musical patterns as pure functions in Haskell: data Pattern a = Pattern {at :: Int -> [a], period :: Int} These patterns can be composed nicely with pattern combinators, creating strange polyrhythmic structures, see my earlier post for info. This turned out just great for [...]

PhD Thesis: Artist-Programmers and Programming Languages for the Arts

by Alex on February 22, 2012

With some minor corrections done, my thesis is finally off to the printers.  I’ve made a PDF available, and here’s the abstract: We consider the artist-programmer, who creates work through its description as source code. The artist-programmer grandstands computer language, giving unique vantage over human-computer interaction in a creative context. We focus on the human [...]

Workshop output

by Alex on February 7, 2011

The Text live coding workshop went really well, surprisingly well considering it was the first time anyone apart from me had used it and (so I found out after) most of the participants didn’t have any programming experience. The six participants took to the various combinators surprisingly quickly, the main stumbling block being getting the [...]

Text update and source

by Alex on January 31, 2011

I’ve updated Text a bit to improve the visual representation of higher order types (you’d probably need to full screen to view): I won’t be touching this until after the workshop on Saturday. I’ve also made the source for the visual interface available here under the GPLv3 free license. To get it actually working as [...]

Test run of Text

by Alex on January 28, 2011

I’ve been rather busy writing lately, my PhD funding runs out in April, and I hope by then I’ll have finished and will be looking for things to do next. I have had a bit of time to make Text, a visual language I mentioned earlier, a bit more stable, here’s a test run: A [...]