Alex McLean

Making music with text

Category Archives: haskell

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 […]


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 […]


by Alex on December 13, 2010

Text is a experimental visual language under development.  Code and docs will appear here at some point, but all I have for now is this video of a proof of concept. It’s basically Haskell but with syntax based on proximity in 2D space, rather than adjacency.  Type compatible things connect automatically, made possible though Haskell’s […]

hackpact week 4

by Alex on September 24, 2009

Ok the third fourth week of hackpact actually started yesterday, but I didn’t think my contribution then warranted a new entry. hackpact23 Bit of an error with the screencast, see if you can spot the problem. Pretty happy with the sound though. (will take a while to appear due to vimeo’s encoding queue) I’m musically […]