Hello everyone,
first some quick context: I have been using SuperCollider for well over 10 years, and am now trying to continue development in it while using the latest version (now using: 3.12.0, on macOS 11.5.1).
However, classes (defined in Extensions) which I have written, thoroughly tested and long used without problems no longer function.
I seem to have isolated the problem, or at least part of it, in the following example code:
START OF SEPARATE FILE “MyPrimitives.sc” (EXTENSION):
MyPrimitives
{
pulse_bipolar_lim
{
arg a_freq = 100.0,
a_pWidth = 0.5;
var a_pWidth_clipped = Clip.ar (in: a_pWidth, lo: 0.0, hi: 1.0);
var uGenGraph = Pulse.ar (freq: a_freq, width: a_pWidth_clipped, mul: -1.0);
^uGenGraph;
}
}
END OF SEPARATE FILE
START OF MAIN CODE:
Server.default = Server.local.boot;
~myPrimitives = MyPrimitives.new;
(
~testSynth = SynthDef
( "testSynth",
{
// Yields an output tone:
var out_sig = ~myPrimitives.pulse_bipolar_lim ( );
// Adding this line yields a silent crash ("Server 'localhost' exited with exit code 0."):
out_sig = out_sig + ~myPrimitives.pulse_bipolar_lim ( );
Out.ar (bus: 0, channelsArray: 0.04 * out_sig);
}
).play;
)
~testSynth.free;
END OF MAIN CODE.
I of course hope somebody can shed light on this. It is no overstatement to say that all my existing code is broken and that I cannot write new code in SuperCollider.
With kind regards,
Staas.