Hallo, padawan12 hat gesagt: // padawan12 wrote:
- Dollar arguments aren't necessary in things
like float boxes, the float takes the value given at its rightmost inlet if a float type is there. No need to "dereference" it, it's not in a list, and even if it were a list with one float becomes a float.
However in loopcut.pd the dollar signs do serve a purpose: You can call the abstraction with arguments like [loopcut 20 500] to initialize the default start and end values.
- You need to study how bangs propagate a bit more.
I know it's not obvious, takes a bit of experience. Basically nothing happens until a leftmost inlet gets a bang. Using [t b f] units to split the bangs from the floats I've arranged it so the start and end list (pair) gets [pack]ed afresh when *either* input is updated.
There still is a bug. ;)
One should *always* get nervous if more than one message connection leaves a single outlet. This is practically always indicating a logic error.
Here two connections come out of the [f] object in your patch. Pd more or less randomly decides which one will act first. It may be, that the one connected to the left [/ ]-object will fire first, then the one to the right [/ ]. In that case, [pack 0 0] will first send a list composed of the new first value but an *old* second value because the second inlet will receive its division result after pack has fired. And that could make your tablplay play backwards.
Frank Barknecht _ ______footils.org_ __goto10.org__