Invent your own language-as-instrument! In this workshop we're each going to design an idiosyncratic ‘mini-language’ for making music, and we’ll do it live. Our languages are going to be input as raw text, and our role is to define how this text will meaningfully generate structured sonic events. The instructors will give a gentle introduction to the construction of grammars for parsing, followed by workshop time to experiment and develop their languages, with a little reserved at the end for presentations or performances. We're going to do most of this using a web-based code editor and other open-source browser-based software provided by the instructors. The languages we create will make sound via built-in browser sound capabilities, or via connecting external software and devices through MIDI, websockets, etc.
No experience in any specific technology is necessary, however some programming experience will be helpful (particularly JavaScript). Participants will need access to a computer (such as a laptop) with a modern browser installed (Chrome is strongly recommended), plus headphones. Participants will leave with the knowledge and software required to continue development of their language on their own. The resulting musically-oriented domain-specific languages could serve as musical instruments, platforms for live coding performance, or tools to aid composition.