Parenthesis not on same height , code not executed

Back into supercollider after 2 year hiatus , still beginners level having fun with a few lines of code .
I wonder why the following code is not executed when there is space before the first parenthesis


    (
{ 
	var a, b, c, d, n, e, f,wer;

	a = Impulse.ar(8)*1.5;

	b = SinOsc.ar(333,mul:0.5)* Env([1.0,1.0,0.0],[0.01,0.01],-5).ar(0, Impulse.ar(4/2)) ;
	c=EnvGen.kr(Env([0,1,0],[0.001,0.500],[0,-2]),Impulse.kr(4/5))*SinOsc.ar(100,b*MouseX.kr(1,55),mul:0.5);
	d=WhiteNoise.ar(mul:0.25)*EnvGen.ar(Env([0,1,0,1,0],[0,1/1,0,1/2],[0,-5]),Impulse.ar(4/7),doneAction:0);
	n=Resonz.ar(d,2000,0.1);
	wer=LFNoise0.ar(10+(EnvGen.ar(Env([0,1,0],[2,0.5],[50,-5]),Impulse.ar(4/16))*5000))*0.1;
	wer=HPF.ar(wer,1000);
	wer=FreeVerb.ar(b+c+n+wer, 0.4, 0.4)*2.5;
	wer*0.5!2

}.play
)
//////////
(///plays correctly 
{
	SinOsc.ar(220)*0.25!2;
}.play
)
///////////////////
    (///doesn't play becasue of space before parenthese 
{
	SinOsc.ar(220)*0.25!2;
}.play
)
//////////

IIRC the IDE’s tokenizer recognizes “region” brackets based on their position at the start of a line (no whitespace).

FWIW I think it’s good if region delimiters are required to be in a consistent place.

This, btw, is not the only time region parens fail to register – if there’s a syntax error in a preceding region, that can also break it :flushed:

hjh

Yes , I’ve noticed that too , a syntax error in a previous region with it’s own start-end parenthesis resulted in the next block of code( with no syntax error) not being executed correctly .
I copy-pasted the code in a new window and it worked
Things like these really make my head scratch