order of execution / wait for execution

chaosmoon's icon

I always thought the order of execution was right to left and that a a chain of events will go as far as possible before the next parallel (trigger) event occurs?

Am i making sense? Was that pure data?

Max Patch
Copy patch and select New From Clipboard in Max.

I thought in the included example the right trigger bang would be delayed, go off and then the left bang. This is not the case. Is there a simple way to make this happen?

bkshepard's icon
Max Patch
Copy patch and select New From Clipboard in Max.

It is going from right to left. The trigger send a bang out the right port, and then the left port. The way you have it configured, the delay causes the first bang to wait. If you want a delayed bang immediately followed by another bang, you need to do this.

chaosmoon's icon

thanks for the replies!

Actually everything works as i suspected, only not with delays..

In this example everything originating from the right chain will execute before "100" is added to the pack and printed. Using a watchpoint-break on the chord under the first bang and the debugger shows it nicely.

Max Patch
Copy patch and select New From Clipboard in Max.

suddenly a lot of my patching logic seemed untrustworthy.

Roman Thilenius's icon

well yes, you could say it is the purpose of [delay] or [pipe] to ignore the order.

bkshepard's icon

That's one of the reasons I use 'em.