Greetings Mark and all,
From: Mark Knecht <markknecht@xxxxxxxxx> BTW - I tried Chuck for the first time this morning, just using a few examples to see how it worked. It built cleanly for Linux-Jack and came up working right away with no xruns. Since I'm not a programmer I'll probably never make effective use of it, unless someone builds some synths, but it seems like a very interesting way to try to build real synths such as those in Reaktor. I'm excited, but also worried I'll never make it useful. Anyway, for those programming types out there, if I can make sounds in 10 minutes I think you could make music in 30!
This semester we taught the PLOrk (Princeton Laptop Orchestra), using ChucK and Max/MSP, to 14 freshman undergraduates, most of whom had no prior programming experience: http://plork.cs.princeton.edu/ By the 2nd week, they were creating programs synthesizing generative drum machines and performing them on-the-fly: http://plork.cs.princeton.edu/listen/machines/ Long before the end of the semester, the plorkists were all very comfortable writing code, controlling physical models, using various controllers (keyboards, triggerfingers, wacom tablets, light/pressure sensors), building instruments out of processed vocal and acoustic instrumental sounds, and networking and synchronizing multiple machines together. It is our hope that ChucK can be useful to researchers, composers, and performers alike, providing different paradigms for seasoned programmers and yet (hopefully) clear and well-defined syntax/semantic to make it fun and interesting for inexperienced coders. It seems so far that as long as one is really interested in sound synthesis and creating music, learning and using ChucK well is pretty straightforward, the command line-friendly way of working seems to present steeper learning curves than the language itself. However, if one is already using Linux, the command line obviously isn't an obstacle. In the case of PLOrk, ChucK pretty quickly became a second nature to the users. Programming should be as simple and clear as possible, the only complexity should be that which lies in the creativity and invention of the programmer. It's unlikely that this goal is being totally achieved in ChucK, but it is certainly something we are striving towards. Best, Ge!