list filter

Apr 13, 2006 at 11:20pm

list filter

i am using matrices to route data. i just need an object that acts like “sel” but for lists instead of just ints and floats etc. i have tried the match object but to no avail. any ideas? anyone?

#25413
Apr 13, 2006 at 11:32pm

match didn’t work? in what context?


robin

#74764
Apr 13, 2006 at 11:44pm

i connect match to the left outlet of matrix and set match to bang on “0 0 0″ but it also bangs on 0 1 0. it seems as if it isnt filtering properly.

#74765
Apr 13, 2006 at 11:56pm

max v2;
#N vpatcher 10 59 1056 480;
#P button 581 245 15 0;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 581 180 64 196617 match 0 1 0;
#P button 503 245 15 0;
#P newex 503 180 64 196617 match 0 0 0;
#P user matrixctrl 503 99 130 66 MatrixDefaultCell.pct MatrixDefaultBkgnd.pct 130 66 16 16 8 4 16 16 1 1 48 2 5120 0;
#P window linecount 3;
#P comment 670 94 100 196617 if i click on cell 0 , 0 it will bang both match objects.;
#P comment 670 241 100 196617 perhaps it doesnt match the numbers in order?;
#P connect 2 0 3 0;
#P connect 3 0 4 0;
#P connect 2 0 5 0;
#P connect 5 0 6 0;
#P pop;

#74766
Apr 13, 2006 at 11:59pm

hmm. souns like im gonna have to leave this someone more experienced than
me. sorry


robin

#74767
Apr 14, 2006 at 12:14am

i get that error (assuming it is an error) too. i cant think of any reason
it should do this.
but like i said, im no expert

good luck with that


robin

#74768
Apr 14, 2006 at 12:15am

a quick fix would be [unpack 0 0 0] into three selects, but its disgustingly
brute force


robin

#74769
Apr 14, 2006 at 12:20am

i dont follow. what do i set sel to?

#74770
Apr 14, 2006 at 12:37am

ignore that, you don’t need select

you want 0 0 0 to be reported? try:

max v2;
#N vpatcher 10 59 351 454;
#P user matrixctrl 98 49 130 66 MatrixDefaultCell.pct
MatrixDefaultBkgnd.pct130 66 16 16 8 4 16 16 1 1 48 2 5120 0;
#P toggle 167 225 15 0;
#P toggle 120 226 15 0;
#P toggle 73 226 15 0;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 98 139 55 196617 unpack i i i;
#P toggle 88 304 15 0;
#P newex 88 278 27 196617 &&;
#P newex 88 249 27 196617 &&;
#P newex 167 192 31 196617 == 0;
#P newex 120 192 31 196617 == 0;
#P newex 73 192 31 196617 == 0;
#P connect 6 0 0 0;
#P connect 0 0 7 0;
#P connect 7 0 3 0;
#P connect 3 0 4 0;
#P connect 4 0 5 0;
#P connect 10 0 6 0;
#P connect 8 0 3 1;
#P connect 9 0 4 1;
#P connect 6 1 1 0;
#P connect 1 0 8 0;
#P connect 6 2 2 0;
#P connect 2 0 9 0;
#P pop;


robin

#74771
Apr 14, 2006 at 10:11am

Rob wrote:
> i am using matrices to route data. i just need an object that acts
> like “sel” but for lists instead of just ints and floats etc. i have
> tried the match object but to no avail. any ideas? anyone?

Does this work for you?

#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P message 188 72 52 196617 1 2 3;
#P button 139 183 15 0;
#P newex 202 183 41 196617 print;
#P button 76 185 15 0;
#P message 132 71 52 196617 45 67 90;
#P newex 76 157 137 196617 sel “45 67 89″ “1 2 3″;
#P message 76 71 52 196617 45 67 89;
#P newex 76 109 51 196617 tosymbol;
#P fasten 7 0 0 0 193 95 81 95;
#P connect 2 1 6 0;
#P connect 2 2 5 0;
#P connect 2 0 4 0;
#P connect 0 0 2 0;
#P fasten 3 0 0 0 137 96 81 96;
#P connect 1 0 0 0;
#P window clipboard copycount 8;

[][] [][][] [][] [][][]
[][][][][][][][][][][][][][][]

Stefan Tiedje
Klanggestalter
Electronic Composition
&
Improvisation

/~~~~~
\ /|() ()|
))))) )| | |( \
/// _/)/ )))))
___/ ///

————————-x—-
–_____———–|———–
–(_|_ —-|—–|—–()—-
– _|_)—-|—–()———–
———-()————x—–

14, Av. Pr. Franklin Roosevelt,
94320 Thiais, France
Phone at CCMIX +33-1-57 42 91 09

#74772
Apr 14, 2006 at 11:30am

Rob wrote:
> i connect match to the left outlet of matrix and set match to bang on
> “0 0 0″ but it also bangs on 0 1 0. it seems as if it isnt filtering
> properly.

I can confirm, I think its a bug.
I just looked at the solution I used in my St.==. And there I convert it
to a string before I compare. As shown before this technique would also
work with select and route…

Stefan

St.== for further studies… (this is newer than the version on
c74/share and accepts also lists as arguments.)

#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P newex 142 26 62 196617 patcherargs;
#P newex 15 69 57 196617 zl reg;
#N comlet bang if different;
#P outlet 111 234 15 0;
#N comlet bang if equal;
#P outlet 94 234 15 0;
#P newex 94 212 44 196617 sel 1 0;
#P newex 77 188 36 196617 int;
#P newex 15 45 73 196617 route bang set;
#P newex 77 97 47 196617 tosymbol;
#P newex 125 97 47 196617 tosymbol;
#N comlet 1 if equal , 0 if different;
#P outlet 77 234 15 0;
#P newex 90 164 34 196617 t 1;
#P newex 77 118 36 196617 t b l 0;
#P inlet 15 26 15 0;
#P inlet 125 26 15 0;
#P newex 125 118 60 196617 prepend set;
#P newex 90 143 34 196617 match;
#P connect 7 0 1 0;
#P connect 2 0 7 0;
#P fasten 15 0 7 0 147 48 130 48;
#P connect 9 1 14 1;
#P fasten 9 1 7 0 51 65 130 65;
#P connect 11 1 13 0;
#P connect 4 2 10 1;
#P connect 5 0 10 1;
#P connect 11 0 12 0;
#P connect 10 0 6 0;
#P fasten 10 0 11 0 82 208 99 208;
#P connect 0 0 5 0;
#P connect 4 1 0 0;
#P fasten 1 0 0 0 130 139 95 139;
#P connect 4 0 10 0;
#P connect 8 0 4 0;
#P fasten 14 0 8 0 20 90 82 90;
#P connect 9 2 8 0;
#P connect 9 2 14 1;
#P connect 9 0 14 0;
#P connect 3 0 9 0;
#P window clipboard copycount 16;

[][] [][][] [][] [][][]
[][][][][][][][][][][][][][][]

Stefan Tiedje
Klanggestalter
Electronic Composition
&
Improvisation

/~~~~~
\ /|() ()|
))))) )| | |( \
/// _/)/ )))))
___/ ///

————————-x—-
–_____———–|———–
–(_|_ —-|—–|—–()—-
– _|_)—-|—–()———–
———-()————x—–

14, Av. Pr. Franklin Roosevelt,
94320 Thiais, France
Phone at CCMIX +33-1-57 42 91 09

#74773
Apr 14, 2006 at 4:55pm

i take it one of those worked for you then?


robin

#74774
Apr 14, 2006 at 5:19pm

stefan, thanks! i am just going to use tosymbol and sel. i cant figure out what that other patch you gave me does. but the using sel with tosymbol works fine.

thanks again.

#74775
Apr 14, 2006 at 7:39pm

yes of course; [match] does not know where your
list (= the matrix output) begins.
match _accepts list input, but i can not _tell a
list from many numbers.

connect a [print] to the matrix and you will see.
when you click the first knob twice you send:
“0 0 1, 0 0 0″, and 0 0 1 0 0 0 contains 0 1 0 …

i think you want to [unpack 0 0 0] the lists to
get matrix knob status.

#74776
Apr 14, 2006 at 7:55pm

> i think you want to [unpack 0 0 0] the lists to
> get matrix knob status.

actually, what i meant was this.

use [route] to route. [route] routes lists just
fine. (it just cuts off the first element, which
we dont need anyway here.)

then you can use [unpack 0 0] make the on/off item
in the list a bang:

max v2;
#N vpatcher 80 532 752 897;
#P button 381 234 15 0;
#P newex 381 205 79 196617 select 1;
#P newex 312 177 79 196617 unpack 0 0;
#P newex 87 130 198 196617 route 0 1 2 3 4 5;
#P button 239 233 15 0;
#P newex 239 204 79 196617 select 1;
#P newex 170 176 79 196617 unpack 0 0;
#P button 89 234 15 0;
#P newex 89 205 79 196617 select 1;
#P newex 20 177 79 196617 unpack 0 0;
#P user matrixctrl 112 40 130 66 MatrixDefaultCell.pct MatrixDefaultBkgnd.pct 130 66 16 16 8 4 16 16 1 1 48 2 0 0;
#P connect 7 0 1 0;
#P connect 0 0 7 0;
#P connect 1 1 2 0;
#P connect 2 0 3 0;
#P connect 7 1 4 0;
#P connect 4 1 5 0;
#P connect 5 0 6 0;
#P connect 7 2 8 0;
#P connect 8 1 9 0;
#P connect 9 0 10 0;
#P pop;

#74777
Apr 14, 2006 at 8:14pm

rob

glad to know you appreciated the effort i went to for you.

not one word of acknowledgment for the patch that i took time to prepare as a solution to your problem.
hardly inspires faith in helping others on the list

#74778
Apr 14, 2006 at 9:52pm

sorry, i really do appreciate every one who helps by posting solutions. even though i didnt end up using your solution it is great to know that there are those out in cyber space who care about helping novice programmers.

so to you all…

much thanks and best regards

rob

#74779
Apr 15, 2006 at 7:57am

ok,
let me advertise my checklist external that does what your looking
for: it compares lists (mixed types).

stephan: your approach to convert any list into a symbol before using
match is dangerous performancewise. imagine having a stream of
numbers coming from a sensor at relatively high speed (~ 10 ms):
you’ll have a symbol generation and symboltable lookup for *every*
item you’re trying to match, do this in an installation that runs for
months without reboot and your dead.

in the attached patch i’m doing the comparison of the matrix
selection using route like roman proposed, then i’m showing the usage
of the checklist external and i also added a commented abstraction
that will compare two lists item by item iterating through them in
parallel with an uzi.

the last thing i would like to comment on is that these kinds of
things are much easier to do in javascript/java where looping and
comparison functionalities are more comfortable to use.

hth

/*j

> i am using matrices to route data. i just need an object that acts
> like “sel” but for lists instead of just ints and floats etc. i
> have tried the match object but to no avail. any ideas? anyone?

max v2;
#N vpatcher 10 59 939 616;
#P window setfont “Sans Serif” 9.;
#P window linecount 1;
#P comment 364 240 103 196617 external available at;
#P comment 757 43 85 196617 jasch 20060415;
#N vpatcher 10 59 588 599;
#P origin 0 -1;
#P window setfont “Sans Serif” 9.;
#P newex 462 49 51 196617 zl slice 1;
#P newex 462 30 64 196617 patcherargs;
#P outlet 50 464 15 0;
#P comment 106 349 120 196617 pass only failed matches;
#P window linecount 2;
#P comment 109 427 94 196617 if any match fails: entire match fails;
#P window linecount 1;
#P comment 268 400 88 196617 defaultresult is 1;
#P newex 233 397 27 196617 1;
#P newex 72 374 27 196617 0;
#P newex 72 348 32 196617 sel 0;
#P newex 72 325 27 196617 i;
#P newex 72 267 22 196617 b 1;
#P newex 100 289 21 196617 t 1;
#P comment 245 303 74 196617 yes match = 1;
#P comment 245 291 110 196617 no match = 0 (default);
#P comment 245 266 89 196617 compare anything;
#P comment 245 211 152 196617 extract nth element of each list;
#P comment 245 190 57 196617 store lists;
#P comment 245 156 64 196617 loop n times;
#P comment 245 124 221 196617 use the shorter list for number of
comparisons;
#P newex 163 236 62 196617 prepend set;
#P newex 50 51 77 196617 t b b l b;
#P newex 106 124 50 196617 minimum;
#P newex 146 96 34 196617 zl len;
#P newex 163 212 45 196617 zl nth;
#P newex 72 190 32 196617 zl reg;
#P newex 72 212 44 196617 zl nth;
#P newex 106 96 34 196617 zl len;
#P newex 72 156 44 196617 uzi;
#P newex 50 423 32 196617 i;
#P newex 163 289 21 196617 t 0;
#P newex 100 267 37 196617 match;
#P newex 163 190 36 196617 zl reg;
#P comment 245 97 107 196617 get length of each list;
#P inlet 189 21 15 0;
#P inlet 50 21 15 0;
#P connect 0 0 14 0;
#P connect 14 0 6 0;
#P connect 6 0 32 0;
#P connect 14 1 7 0;
#P connect 7 0 10 0;
#P connect 10 0 9 0;
#P connect 9 0 24 0;
#P connect 24 0 25 0;
#P connect 25 0 26 0;
#P connect 26 0 27 0;
#P connect 27 0 6 1;
#P fasten 28 0 6 1 238 418 77 418;
#P connect 5 0 25 1;
#P connect 23 0 25 1;
#P connect 14 2 10 1;
#P connect 15 0 4 0;
#P connect 9 0 4 0;
#P connect 4 0 23 0;
#P connect 14 2 8 0;
#P connect 8 0 13 0;
#P connect 13 0 7 1;
#P connect 7 2 9 1;
#P fasten 34 1 12 0 508 84 151 84;
#P lcolor 1;
#P connect 1 0 12 0;
#P connect 12 0 13 1;
#P fasten 7 0 3 0 77 181 168 181;
#P connect 3 0 11 0;
#P connect 11 0 15 0;
#P connect 15 0 5 0;
#P connect 1 0 3 1;
#P fasten 34 1 3 1 508 186 194 186;
#P lcolor 1;
#P fasten 7 2 11 1 111 177 203 177;
#P fasten 14 3 28 0 121 79 238 79;
#P connect 33 0 34 0;
#P pop 1;
#P newobj 680 171 104 196617 p list_compare 1 1 1;
#P hidden message 721 394 87 196617 patcherargs bang;
#P hidden newex 721 414 64 196617 universal 1;
#N vpatcher 10 59 588 599;
#P origin 0 -1;
#P window setfont “Sans Serif” 9.;
#P newex 462 49 51 196617 zl slice 1;
#P newex 462 30 64 196617 patcherargs;
#P outlet 50 505 15 0;
#P comment 106 349 120 196617 pass only failed matches;
#P window linecount 2;
#P comment 109 427 94 196617 if any match fails: entire match fails;
#P window linecount 1;
#P comment 268 400 88 196617 defaultresult is 1;
#P newex 233 397 27 196617 1;
#P newex 72 374 27 196617 0;
#P newex 72 348 32 196617 sel 0;
#P newex 72 325 27 196617 i;
#P newex 72 267 22 196617 b 1;
#P newex 100 289 21 196617 t 1;
#P comment 245 303 74 196617 yes match = 1;
#P comment 245 291 110 196617 no match = 0 (default);
#P comment 245 266 89 196617 compare anything;
#P comment 245 211 152 196617 extract nth element of each list;
#P comment 245 190 57 196617 store lists;
#P comment 245 156 64 196617 loop n times;
#P comment 245 124 221 196617 use the shorter list for number of
comparisons;
#P newex 163 236 62 196617 prepend set;
#P newex 50 51 77 196617 t b b l b;
#P newex 106 124 50 196617 minimum;
#P newex 146 96 34 196617 zl len;
#P newex 163 212 45 196617 zl nth;
#P newex 72 190 32 196617 zl reg;
#P newex 72 212 44 196617 zl nth;
#P newex 106 96 34 196617 zl len;
#P newex 72 156 44 196617 uzi;
#P newex 50 423 32 196617 i;
#P newex 163 289 21 196617 t 0;
#P newex 100 267 37 196617 match;
#P newex 163 190 36 196617 zl reg;
#P comment 245 97 107 196617 get length of each list;
#P inlet 189 21 15 0;
#P inlet 50 21 15 0;
#P connect 0 0 14 0;
#P connect 14 0 6 0;
#P connect 6 0 32 0;
#P connect 14 1 7 0;
#P connect 7 0 10 0;
#P connect 10 0 9 0;
#P connect 9 0 24 0;
#P connect 24 0 25 0;
#P connect 25 0 26 0;
#P connect 26 0 27 0;
#P fasten 28 0 6 1 238 418 77 418;
#P connect 27 0 6 1;
#P connect 23 0 25 1;
#P connect 5 0 25 1;
#P connect 14 2 10 1;
#P connect 15 0 4 0;
#P connect 9 0 4 0;
#P connect 4 0 23 0;
#P connect 14 2 8 0;
#P connect 8 0 13 0;
#P connect 13 0 7 1;
#P connect 7 2 9 1;
#P fasten 34 1 12 0 508 84 151 84;
#P lcolor 1;
#P connect 1 0 12 0;
#P connect 12 0 13 1;
#P fasten 7 0 3 0 77 181 168 181;
#P connect 3 0 11 0;
#P connect 11 0 15 0;
#P connect 15 0 5 0;
#P fasten 34 1 3 1 508 186 194 186;
#P lcolor 1;
#P connect 1 0 3 1;
#P fasten 7 2 11 1 111 177 203 177;
#P fasten 14 3 28 0 121 79 238 79;
#P connect 33 0 34 0;
#P pop;
#P newobj 575 171 104 196617 p list_compare 1 0 1;
#P message 576 271 91 196617 0 1 0 2 0 3 0 4;
#P message 668 271 61 196617 0 1 0 2 0 3;
#P message 576 290 91 196617 0 1 0 alpha omega;
#P toggle 576 376 15 0;
#P message 668 290 81 196617 0 1 0 alpha zulu;
#P message 576 310 91 196617 0 1 0 alpha zulu;
#N vpatcher 10 59 588 599;
#P outlet 50 504 15 0;
#P window setfont “Sans Serif” 9.;
#P comment 106 348 120 196617 pass only failed matches;
#P window linecount 2;
#P comment 109 426 94 196617 if any match fails: entire match fails;
#P window linecount 1;
#P comment 268 399 88 196617 defaultresult is 1;
#P newex 233 396 27 196617 1;
#P newex 72 373 27 196617 0;
#P newex 72 347 32 196617 sel 0;
#P newex 72 324 27 196617 i;
#P newex 72 266 22 196617 b 1;
#P newex 100 288 21 196617 t 1;
#P comment 245 302 74 196617 yes match = 1;
#P comment 245 290 110 196617 no match = 0 (default);
#P comment 245 265 89 196617 compare anything;
#P comment 245 210 152 196617 extract nth element of each list;
#P comment 245 189 57 196617 store lists;
#P comment 245 155 64 196617 loop n times;
#P comment 245 123 221 196617 use the shorter list for number of
comparisons;
#P newex 163 235 62 196617 prepend set;
#P newex 50 50 77 196617 t b b l b;
#P newex 106 123 50 196617 minimum;
#P newex 146 95 34 196617 zl len;
#P newex 163 211 45 196617 zl nth;
#P newex 72 189 32 196617 zl reg;
#P newex 72 211 44 196617 zl nth;
#P newex 106 95 34 196617 zl len;
#P newex 72 155 44 196617 uzi;
#P newex 50 422 32 196617 i;
#P newex 163 288 21 196617 t 0;
#P newex 100 266 37 196617 match;
#P newex 163 189 36 196617 zl reg;
#P comment 245 96 107 196617 get length of each list;
#P inlet 189 20 15 0;
#P inlet 50 20 15 0;
#P connect 0 0 14 0;
#P connect 14 0 6 0;
#P connect 6 0 32 0;
#P connect 14 1 7 0;
#P connect 7 0 10 0;
#P connect 10 0 9 0;
#P connect 9 0 24 0;
#P connect 24 0 25 0;
#P connect 25 0 26 0;
#P connect 26 0 27 0;
#P connect 27 0 6 1;
#P fasten 28 0 6 1 238 417 77 417;
#P connect 5 0 25 1;
#P connect 23 0 25 1;
#P connect 14 2 10 1;
#P connect 15 0 4 0;
#P connect 9 0 4 0;
#P connect 4 0 23 0;
#P connect 14 2 8 0;
#P connect 8 0 13 0;
#P connect 13 0 7 1;
#P connect 7 2 9 1;
#P connect 1 0 12 0;
#P connect 12 0 13 1;
#P fasten 7 0 3 0 77 180 168 180;
#P connect 3 0 11 0;
#P connect 11 0 15 0;
#P connect 15 0 5 0;
#P connect 1 0 3 1;
#P fasten 7 2 11 1 111 176 203 176;
#P fasten 14 3 28 0 121 78 238 78;
#P pop;
#P newobj 576 344 102 196617 p list_compare;
#P button 680 214 15 0;
#P button 575 213 15 0;
#P newex 680 193 32 196617 sel 1;
#P newex 575 192 32 196617 sel 1;
#P button 288 235 15 0;
#P button 240 235 15 0;
#P button 224 235 15 0;
#P button 272 235 15 0;
#P newex 272 213 43 196617 sel 0 1;
#P newex 272 192 43 196617 route 1;
#P newex 272 171 43 196617 route 1;
#P newex 224 213 43 196617 sel 0 1;
#P newex 224 192 43 196617 route 0;
#P newex 224 171 43 196617 route 1;
#P comment 177 213 39 196617 on/off;
#P comment 177 192 41 196617 row;
#P button 147 235 15 0;
#P button 99 235 15 0;
#P button 83 235 15 0;
#P button 131 235 15 0;
#P newex 131 213 43 196617 sel 0 1;
#P newex 131 192 43 196617 route 1;
#P newex 131 171 43 196617 route 0;
#P newex 83 213 43 196617 sel 0 1;
#P newex 83 192 43 196617 route 0;
#P newex 83 171 43 196617 route 0;
#P button 444 213 15 0;
#P button 365 213 15 0;
#P newex 444 192 32 196617 sel 1;
#P newex 444 171 77 196617 checklist 0 1 0;
#P newex 365 192 32 196617 sel 1;
#P newex 365 171 77 196617 checklist 0 0 0;
#P user matrixctrl 83 97 34 34 MatrixDefaultCell.pct
MatrixDefaultBkgnd.pct 34 34 16 16 2 2 16 16 1 1 48 2 5120 0;
#P comment 177 171 41 196617 column;
#P hidden comment 721 378 91 196617 reset patcherargs;
#P comment 364 255 130 196617 http://wwww.jasch.ch/dl;
#P comment 663 43 79 196617 list comparison;
#P fasten 4 0 11 0 88 151 88 151;
#P connect 11 0 12 0;
#P connect 12 0 13 0;
#P connect 13 0 18 0;
#P connect 13 1 19 0;
#P fasten 4 0 14 0 88 151 136 151;
#P connect 14 0 15 0;
#P connect 15 0 16 0;
#P connect 16 0 17 0;
#P connect 16 1 20 0;
#P fasten 4 0 23 0 88 151 229 151;
#P connect 23 0 24 0;
#P connect 24 0 25 0;
#P connect 25 0 30 0;
#P connect 25 1 31 0;
#P fasten 4 0 26 0 88 151 277 151;
#P connect 26 0 27 0;
#P connect 27 0 28 0;
#P connect 28 0 29 0;
#P connect 28 1 32 0;
#P fasten 4 0 5 0 88 151 370 151;
#P connect 5 0 6 0;
#P connect 6 0 9 0;
#P fasten 4 0 7 0 88 151 449 151;
#P connect 7 0 8 0;
#P connect 8 0 10 0;
#P fasten 4 0 44 0 88 151 580 151;
#P connect 44 0 33 0;
#P connect 33 0 35 0;
#P connect 43 0 37 0;
#P connect 41 0 37 0;
#P connect 38 0 37 0;
#P connect 37 0 40 0;
#P connect 42 0 37 1;
#P connect 39 0 37 1;
#P fasten 4 0 47 0 88 151 685 151;
#P connect 47 0 34 0;
#P connect 34 0 36 0;
#P hidden connect 46 0 45 0;
#P pop;

#74780
Apr 15, 2006 at 4:50pm

jasch, you’re saying that if i use stefans tosymbol idea then my cpu will be running too hard. or at least there is an easier way to filter lists?

thanks

rob

#74781
Apr 15, 2006 at 5:41pm

exactly

#74782
Apr 15, 2006 at 6:58pm

/*j wrote:
> stephan: your approach to convert any list into a symbol before using
> match is dangerous performancewise. imagine having a stream of numbers
> coming from a sensor at relatively high speed (~ 10 ms): you’ll have a
> symbol generation and symboltable lookup for *every* item you’re trying
> to match, do this in an installation that runs for months without
> reboot and your dead.

Thanks for the hint, best would be cycling acknowledges the behaviour of
match as bug and fixes it…
For my needs of comparisons though the symbol creation is most likely no
issue

Stefan

[][] [][][] [][] [][][]
[][][][][][][][][][][][][][][]

Stefan Tiedje
Klanggestalter
Electronic Composition
&
Improvisation

/~~~~~
\ /|() ()|
))))) )| | |( \
/// _/)/ )))))
___/ ///

————————-x—-
–_____———–|———–
–(_|_ —-|—–|—–()—-
– _|_)—-|—–()———–
———-()————x—–

14, Av. Pr. Franklin Roosevelt,
94320 Thiais, France
Phone at CCMIX +33-1-57 42 91 09

#74783
Apr 15, 2006 at 7:39pm

jan is in dialectic trouble anyway with this
idea since he had been taking java solutions
into account :)

i am big fan of the zl objects … there should
be a few more of them … like funnel and spray!

#74784
Apr 15, 2006 at 8:00pm

Rob wrote:
> jasch, you’re saying that if i use stefans tosymbol idea then my cpu
> will be running too hard. or at least there is an easier way to
> filter lists?

If you use it in the context you want to, its no problem, as there is
only a limited number of combination possibilties, each one would create
a symbol which will be stored somewhere in the memory, but its small. If
you want to compare ever changing values and keep doing so over months
this is an issue. No problem for your problem I guess…

Stefan

[][] [][][] [][] [][][]
[][][][][][][][][][][][][][][]

Stefan Tiedje
Klanggestalter
Electronic Composition
&
Improvisation

/~~~~~
\ /|() ()|
))))) )| | |( \
/// _/)/ )))))
___/ ///

————————-x—-
–_____———–|———–
–(_|_ —-|—–|—–()—-
– _|_)—-|—–()———–
———-()————x—–

14, Av. Pr. Franklin Roosevelt,
94320 Thiais, France
Phone at CCMIX +33-1-57 42 91 09

#74785
Apr 16, 2006 at 6:17am

and there’s also L== by peter elsea,

how’s that for dialectic….

>> Thanks for the hint, best would be cycling acknowledges the
>> behaviour of
>> match as bug and fixes it…
>> For my needs of comparisons though the symbol creation is most
>> likely no
>> issue
>>
>> Stefan
>
>
> jan is in dialectic trouble anyway with this
> idea since he had been taking java solutions
> into account :)
>
> i am big fan of the zl objects … there should
> be a few more of them … like funnel and spray!

or the whole python-suite in single max objects

#74786
Apr 16, 2006 at 11:34am

Quote: jasch wrote on Sun, 16 April 2006 00:17
—————————————————-
>
> and there’s also L== by peter elsea,

there is also Y== by Yvonne Catterfeld but
that is OS 9 only.

no i dont think i like comparing lists as
a solution for routing them. you will have
to type a lot of lists when you have to
route data from 25×25 matrix, while the use
of [route] enables you to copy most parts
of the code.

-110 (in trouble as usual)

#74787

You must be logged in to reply to this topic.