On Fri, Sep 23, 2011 at 10:40:20PM +0200, Renato wrote:
On Fri, 23 Sep 2011 09:21:45 +0000
Fons Adriaensen <fons(a)linuxaudio.org> wrote:
Take SC. I love the way the synthesis engine
works and can
be controlled using OSC. But, even as a programmer, that is
someone used to writing formal instructions and descriptions
in a text based format, I have to *fight* the SC language all
the time. IMHO it's a mess, and it seems to be designed to
allow spectacular one-liners rather than for clarity and
consistency.
I feel the same way.
I'm using it now only to write synthdefs, for
all the rest I use Python.
I'm a noob on this, and I think I don't really get what parts of the SC
I know are sclang and what scsynth.
That's part of the problem. It is possible to use sclang in
a way that makes the language/engine separation explicit.
But then not much remains of the language.
Using Python and OSC I guess you can easilly play
SynthDefs (because
these are loaded on the server and anyhow sclang communicates with
OSC to the server), but do you loose all the other nice stuff like
Ugens, Tasks, Routines, Patterns?
Ugens are part of SynthDefs, they are an engine side thing. The others,
Tasks, Routines, Patterns you can do as well in Python, and then at
least you know what's happening. Patterns can be tricky, the easiest
way to do something similar is using Stackless Python.
That assumes you want patterns, most of the time I don't want them
and I'm thinking more in terms of a events on a timeline, or a set
of timelines. That is one thing that sclang does not support very well
- all the attention of its creators/developers is on patterns. You
are more or less forced to think in that way unless you need only
very basic functionality.
BTW, I'm still waiting for a basic description of Tasks, Routines, tne
'.fork' method and whatever else sclang has to offer for concurrent
execution. Are these coroutines, application level threads, system level
threads, or what ? '.fork' suggest it's creating a new process but I'm
pretty sure it doesn't. Etc. Etc.
Ciao,
--
FA