RC1: Getting ready for Fall 2020


I’ve been accepted at the Recurse Center for the session beginning September 21, 2020. It will be twelve weeks pure joy, work, and learning, with all control knobs set to 10. Have looked over the profiles of some of the other RC participants. Amazing in variety of interests and experience.

About what to learn. I’ve made a go at Haskell several times, but have never reached the point at which I can confidently build things with it. At RC, there is a lot of interest in functional programming in general and Haskell in particular, so maybe now is the time. RC has some good online resources, and Brent Yorgey’s CIS 194 course at U Penn looks especially nice.

If I am to learn Haskell, I need to build something with it. One possibility is generative music. There is a great reference for this: The Haskell School of Music, by Paul Hudak and Donya Quick. Working through it could be part of something quite ambitious that I’ve been thinking about:

Create a declarative language for writing a “score” that would direct an algorithmically created performance. The score would define both aural and visual elements, coordinating their initiation, coordination, and evolution over time. In terms of eventual performances, I’m thinking along the lines of the Processing project Seurat which I wrote many years ago (2013). It turns out that I still have the code. Performance of Seurat is controlled by an Arduino, and I’ve found the code for that too. The Arduino has to be connected to a control box with some potentiometers.

Here is one frame from that processing program created long ago:

Purple flight Purple Flight, Frame 1047