Mike and Andres speak to Alex McLean who created the TidalCycles system for electronic music - implemented in Haskell of course. We talk about how Alex got into Haskell coming from Perl, how types helped him think about the structure of music and patterns, the architecture and evolution of TidalCycles, about art, community and making space for new ideas, and lots of things in between.
Was nice finally hearing Alex on the podcast! His work has pushed programming from an engineering discipline to an artistic craft (in a very direct way), and I think it is a big deal. The punchline is spot on: we need to create spaces for new ideas and communities to thrive-on/nurture them.
Tidal Cycles is the instrument of choice of many awesome live coding performers and enthusiasts, and is probably responsible for a significant amount of Haskell installations—and people programming in Haskell (even without knowing) for that matter, as Alex points out—. It is the reason I got into Haskell in the first place, and passionate about programming in general. The history behind the pattern representation and its musical significance is a functional pearl IMO. (||) <$> programmer <*> musician
should try it out and have a blast playing with patterns
Thank you so much for this! Such a treat to hear Alex nerd out a bit on the haskell guts underlying tidal.
As someone who got into coding through a love for music, coming across and understanding Alex’s Pattern
abstraction has been one of the most inspiring moments I can remember.
Building up intricate, infinite, pure patterns with composition of higher order functions, and only paying for the span that you actually want to observe when you’re ready to observe it is such a special insight.