Frequently Asked Questions

Q. There are already many languages out there; why did you write a new one?
A. For fun, of course; the main point is always to enrich one's knowledge. On a secondary goal I also wanted to write a simple (but powerful) embeddable language, that could be expanded with C/C++. This variant of the Scheme langauge sports several features that even well-known languages miss (ie. reflection).

Q. Can you give me a short description of the language?
A. Sure. Vuza is a Scheme-dialect that implements part of the R4RS standard but sports a Lisp-like macro system. It is lexically-scoped, dinamically-typed, fully tail-recursive, garbage-collected, with functions as first-class objects. As a keypoint, it implements several extensions suitable for musical and audio tasks (see below).

Q. Will you write a full manual for the language?
A. Sure, it's cooking :) For the moment you can take a look to the paper that will be presented at the ICMC 2014, in Athens.

Q. What makes Vuza a good choice for musical applications?
A. Vuza is a general programming language, but it comes with several powerful extensions specifically designed for musical tasks, such as computer assisted composition and signal analysis and synthesis. Vuza implements bindings for two well-known libraries for real-time audio ( Csound ) and UI creation ( FLTK ); these bindings are called respectively vuzcsnd and vuztk. This language will also support the theory of sound-types developed by the author.

Q. Where can I find an extensive set of examples?
A. Some examples are distributed with the main code base, but many more will be provided in the future.

Q. Are you alone in this project?
A. I'm the designer of the language and the only developer, but there are several people that are helping this project doing tests, side development, etc. Moreover, this language will be used for a research project at Ircam in Paris, from october 2014.