Wednesday, November 20 • 14:00 - 14:50
Immutable music: or, the time-travelling sequencer

Log in to save this to your schedule, view media, leave feedback and see who's attending!

What happens if we take a functional programming approach to audio development? This talk explores the possibilities, and difficulties, of using pure functions and immutable data to build sequencers, arpeggiators and groove boxes.

Along the way we'll discover weird outcomes when we treat time as a first-class citizen in our code. Timelines are stretched and inverted with ease; algorithms look into the future to make decisions in the present. An enhanced ability to compose our code means that we can experiment by combining musical concepts easily, even while our music plays back and without complicated 'reset' code. Feel like turning an arpeggiated drum pattern into a Bach-like canon with a heavy jazz swing? Shouldn't take a second.

But of course it's never all rainbows. What are the challenges of working with this approach? What are the limitations? Can it perform well enough for use in live situations? We'll look at data structures, optimisations and the things a pure function can never let us do.

This talk will feature some live demonstrations from the author's sequencer platform, which is built on these functional principles.

avatar for Tom Maisey

Tom Maisey

Developer, Independent
I'm an independent audio developer who has been bitten by the functional programming bug. Now I'm working on an interactive sequencer and music composition environment based on these principles. It's written in a dialect of Lisp - if you want to chat just ask me why parentheses are... Read More →

Wednesday November 20, 2019 14:00 - 14:50 GMT
Lower River Room Puddle Dock, London EC4V 3DB