Please log in to watch this conference skillscast.
Rhythmr is an interactive system, implemented in Haskell, for creating ear-pleasing rhythm loops from randomly-acquired audio files. The user iterates through an unending stream of randomly combined music loops, swiping left or right on each one to indicate whether they like it or not. Rhythmr derives a model of which combinations sound good based on user input, and from that, produces a complete song by inserting the chosen combinations into a predefined score.
I’m a recent Haskell convert, and Rhythmr is the first useful application I’ve created with it. It required my learning a lot of Haskell skills: audio, graphics, profiling, optimization, user interactivity, and more.
Haskell was crucial to the success of this project, for it allows efficient construction of reliable software, and pure state handling made implementing features like ‘undo’ very easy. I was able to prototype many variations of the algorithm and interface in order to produce a usable tool.
YOU MAY ALSO LIKE:
- Performance Summit 2022 (Online Conference on 29th - 30th August 2022)
- Haskell eXchange 2022: Novice Track (Online Conference on 7th December 2022)
- Haskell: Why and How the External STG Interpreter is Useful (SkillsCast recorded in December 2021)
- Keynote — Haskell: What To Do When Success Can't Be Avoided (SkillsCast recorded in November 2021)
Performance Proposal: Rhythmr, Or Semi-Automated Audio Loops (Lightning Talk)
Greg Travis is a software developer, musician, and composer living in New York City. He is interested in functional languages, creativity tools, and procedural art. His most successful software work is probably the addition of the colon and semicolon keyboard shortcuts to Gmail, and he's likely the only person who even knows about them.