Friday, November 9, 2007

Week 1 - Processes, Parameters, Interface

We discussed:
  • Objectives and scope of this course: To teach basic programming principles for music using SuperCollider.
  • History of SuperCollider (From MAX extensions to Pyrite and Synth-o-Matic, SuperCollider 1, 2 and 3, stations in the development of SuperCollider.
  • Origin and Development of Music Programming Languages. See historical article by Gareth Loy and Curtis Abbott: "Programming languages for computer music synthesis, performance, and composition" in: ACM Computing Surveys (CSUR), Volume 17 , Issue 2 (June 1985), pp. 235 - 265 . Note: Can be found online via the Ionian University Library web service.
  • Based on the example of Csound we introduced some basic principles underlying systems and languages for sound synthesis. Concepts discussed:
    • Orchestra and score file formats.
    • Instrument (Synth), synth definition and synth generation.
    • Unit generator structure of synths.
    • Variables and parameters
    • "Interface" for programming a language, API (Application Programming Interface)
    • message sending as method for communicating with objects in OOP
    • The interface concept in OOP (the set of messages to which an object responds)
    • The basic interface of synth processes: Messages for creating and destroying ("freeing") Synths and messages for changing (setting) the parameters of synths.

Assignment:
Further references:
SuperCollider Book (Draft) by Iannis Zannos. This can be dowloaded from: http://www.esnips.com/supercollider

No comments: