Hacker Newsnew | past | comments | ask | show | jobs | submitlogin
Functional composition: from sine wave to Bach canon (skillsmatter.com)
17 points by yayitswei on Nov 25, 2012 | hide | past | favorite | 5 comments


Chris Ford explains music theory using Clojure. He starts with a pure sine wave and builds up abstractions, ending up with a Bach canon.


Thanks for sharing this, it totally blew my mind. He explains each piece and term so clearly that I really felt I could finally get my head around some of the basic music terminology, and maybe even try recreating some basic melodies.

Wish it had made it higher up on the front page though, it certainly seems worthy.


Is this useful for someone with no knowledge of functional programming languages? I'm certainly interested in the topic.

I recently spent some time learning [ChucK](http://chuck.cs.princeton.edu), and used it to generate sound effects for my game. After several unsatisfactory crops with audacity and other tools (bfxr, etc), I found it to be a real pleasure to do the task with a text editor and terminal instead. I'm happy with the result, but I think I'd like to continue learning audio programming.


There are a few FP-related piece you might want to know, but as long as you understand the idea of first-class functions (passing a function to another function as an argument), then you should be able to get your head around it quickly. It's definitely worth it, and may be a great way to generate sounds for games as well.

Overtone itself is a bit more sophisticated/batteries-included than the video lets on, because he builds up everything himself to show there's no magic.


Thanks. It turns out I enjoyed this very much, and though the syntax was a bit foreign it made a lot more sense than I expected.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: