|
Tobias Kunze wrote:
> I think you are calling for a completely new synthesis
> language. While csound may be "ok" as a Music V-style
> instrument description language on a basic level (ie, < 20
> different unit generators), its expressiveness as a
> "programming" language is damn close to zero.
...
> The "language" itself is a catastrophe:
> you can't mix cases or pick meaningful variable names, are stuck
> with table and instrument numbers instead of names and thus
> can't embed code, can't print diagnostics or debug, and so
> forth.
I was wondering whether it would be possible to alleviate
some of the shortcomings of the Csound language by
building instruments in a more friendly and ``higher level''
programming language, then using a ``translator'' of some sort
to change the given orchestra into csound format. Thus, the
.orc file would be a ``low-level'' intermediate stage, much like
the object files created by C compilers.
(Indeed, as a first embryonic step, it is not too hard to imagine a
``sed'' script to change long upper-and-lower-case variable names
into Csound compatible names using a one-to-one association).
This approach would eliminate the limitations with the variable name
syntax, and possibly allow more modern flow-control conditionals.
My question is: Is the Csound language sufficiently
``complete'' to support most modern logical constructions (even
if implemented in some sort of ugly way), or would such a
``higher level'' language be simply a cosmetic improvement?
- Fabio Bertolotti
|