A domain specific language for drum beat programming.

Published in Brazilian Symposium on Computer Music 2017, 2017

This paper describes HDrum, a Domain Specific Language for writing drum patterns. Programs written in HDrum look similar to the grids, available in sequencers and drum machines, used to program drum beats, but as the language has an inductive definition we can write abstractions to manipulate drum patterns. HDrum is embedded in the Haskell functional program- ming language, hence it is possible to implement Haskell functions that manipulate patterns generating new patterns. The paper also presents a case study using HDrum, an implementation of The Clapping Music, a minimalistic music written by Steve Reich in 1972. The HDrum language is currently compiled into midi files.

HDrum project page