Figure 1: A Strays Mixdown Player Graphical User Interface.
With the string opcodes in Csound, you can define your own language for working with strings as arrays. An example of that has been shown. If you prefer another syntax or you need new opcodes: no problem - just change the string parsing UDOs or write additional ones.
Of course, the use of strings as arrays is not meant to be an alternative to the use of function tables in audio processing. The place for strings as arrays is mainly at the control of Csound, where the user wants to tell Csound what to do, in a way which is as simple and intuitive as possible.
Thanks, as always, to Anna for reading the manuscript, and to Alex and Andrés for their suggestions.
[1] In many situations, a function table can be used with GEN02, but this is restricted to numbers and the table must have a fixed length.
[2]This will hopefully be improved with the new parser.
[3]See the file Easier.csd in the StraysExs.zip as an example for this statement.
[4]If you use the Stray UDOs, make sure that you do not get any problems due to the default maximum string length of 256 characters in Csound. I would recommend to insert the flag -+max_str_len=10000 in the CsOptions tag of a .csd file to avoid problems.
[5]See the file Easier.csd in StraysExs.zip, which requires the file StrayUDOs.inc also in the same directory.
[6]For using the script, it might be necessary to type firstchmod 755 /your/script/pathin your command line tool, for making it executable.