Demo: A Geometric Approach to Generate Musical Rhythmic Patterns in Haskell
summary
A small Haskell DSL called RTG DSL in Haskell generates and manipulates rhythms by representing patterns as binary lists for onset/rest and exposing a RhythmicPattern type class that aims to lift pattern types into algebraic groups (Erlangen program idea) so group operations and inverses can compose rhythms. Examples include Euclidean/“ukian” distributions and a second time-based rational-list pattern; sound is emitted via OSC to TidalCycles+SuperCollider, which works but currently produces unsynchronized players because buffering/scheduling is not yet implemented.
AI-written summary · about
chapters (12)
- 0:00Introduction
- 1:10RTG library overview
- 3:20Geometric inspiration
- 5:51Design goals and constraints
- 10:25Rhythmic pattern demo
- 12:23Pattern type separation
- 14:20Sound implementation
- 16:06Avoiding pattern specification
- 18:42Summary and questions
- 19:05Q&A on EAN
- 22:19Musical interest in patterns
- 24:48Closing remarks
related talks
01h 02mMusical patterns as functions
11mCyclic Gibbering
51mMaking Music with Ruby: Patterns, Context, Fun
26mRuby patterns for contemporary dance music
32mScala, Sound, and Structure - Composing Music through FP
42mSounds of Structure - Music Modelling with ADT's
59mHaskell Design Patterns for Genericity & Asynchronous Behavior
33mThe musical Ruby
