Category «Programming Languages»

Have an Android phone with a bunch of unused free disk space? Want to code Haskell on it? Don’t like the idea of rooting your phone and risking bricking it just to install a compiler? Are you filled with a bizarre desire to develop code on a tiny device with a tiny screen? Do you …

I was recently gifted a ROLI Lightpad M Block, which is programmable with a language called Littlefoot. You can control the display of 15×15 pixels and behavior for sending/receiving MIDI messages based on touch and/or time. There is a challenge though: your code size is capped to just a few KB and you only get …

Update 09-Nov-2017: the github version of this now includes the other features I listed as to-dos here along with writeNRT working (it just required a Windows-compatible version). More complex and infinite music values should behave just fine, and there is also support for different ways of handling the “R” part of ADSR envelopes. Tom Murphy …

One of the strengths of the Euterpea library is the ability to generate complex musical values extremely concisely. Here I’m going to walk through an example of that, the results of which I then took and turned into a more serious composition. Here’s the motif I started with: x1 = c 4 en :+: g 4 …

It was recently suggested that I should start a list of important conferences that should be on the radar for people interested in getting into computer music. This page is my attempt at such a list and may be updated over time. Last modified: The International Computer Music Conference – this is one of the most …

Part of my work as a postdoc within the Yale Haskell Group in 2014 involved refining the playback implementation for the Euterpea library. As of Euterpea 2.0, the default MIDI playback implementation, play, supports sequentially infinite musical structures, but at the expense of allowing a time leak. This post will explain how that situation came to be and …