Clojure in Berlin #
Though I had the chance to tinker with some Clojure code only briefly it’s programming model and the resulting compact
programs do fascinate me. As the resulting code runs on a JVM and does integrate well with existing Java libraries
migration is comparably cheap and easy.
Today I finally managed to attend the local Berlin Clojure meetup, co-organised by Stefan Hübner and Fronx. Timing
couldn’t have been much better: In this evenings event Philip Potter from Thoughtworks introduced Overtone - a library for making music with Clojure.
After installing and configuring jack for sound
output, supercollider, and overtone outputting your first tone is as simple as registering the overtone library and
typing
(definst foo [] (saw 220))
(foo)
To stop it type (stop).
Other types of
waves of course are supported as well, so is playing different waves simultaneously and modifying them at runtime. Also
expressing sounds as notes (c, d, e, f, g) that may have a certain length is possible of course – which makes it so
much easier to design music than having to thing in frequencies.
A sample of what can easily be done with
Overtone:
Original sound way better - this sample was taken with a mobile phone, compressed, re-coded and then put online. Checkout Overtone project for the real thing - and don’t even try to listen to the sample with low-end laptop speakers ;)
Overall a well organised meetup (Thanks to Soundcloud for hosting it, to the organisers for putting it together and to the speaker for a really well done introduction to Overtone) and an interesting way to get started with Clojure with very fast (audio) feedback.