
ingox
Some slight modifications with [list fromsymbol] and [list tosymbol]. This should now work for lists of floats like 1 2 3 and symbols like abc, but not for lists of symbols like a b c.
Heaps_algorithm2.pd 
ingox
As i understand it, Heap's algorithm doesn't look for repetitions, only for positions. Therefore 1 2 3 has six permutations, as well as 1 1 1 has six. But i didn't got to understand the algorithm completely, just tried to make an implementation.

ingox
@Pándinus This could be one implementation of Heap's algorithm in nonrecursive format. I took the example from https://en.wikipedia.org/wiki/Heap's_algorithm. This only works for lists of floats.
Heaps_algorithm.pd 
ingox
@Pándinus In traditional languages the permutation problem can be solved with very little code using recursion. In Java: https://stackoverflow.com/questions/4240080/generatingallpermutationsofagivenstring. There are also solutions without recursion (Heap’s algorithm).
I tried a little bit to implement the Java example in Pd, but couldn't get my brain to wrap around it yet. There is an excellent example of data flow recursion in iem [listdrip] of the listabs library. Therefore i guess that there must be a very elegant way to do it.

ingox
@Balwyn Yes. As Jona mentioned in the other thread, we wanted to build a multislider interface, where you can click anywhere and the sliders would react. Just like the "Jump on click" property of the H/Vslider. The graphical representation and the animation where already working, using data structures, all we needed was the mouse position. With iemgui [iem_event] there is a great solution, our question was if it is possible with vanilla alone.
I agree that it is not possible to get it in a perfect manner with vanilla right now. Still data structures are very powerful and i love what you did with our findings!


ingox
I was just looking at some of the tests and found this approach not using data structures, but an array. It is driven by a metro and has some unwanted graphical effects of the array, but it is vanilla and actually works.
pixeltest2.pd 
ingox
@meandmymonkey Don't know about [specFlux~] and [f+], but this works:
tabwriteexample.pd 
ingox
@lacuna You can switch the visibility of subpatches, so you can build a master,pd with subpatches, where you put the modules inside and activate GOP. Like this:
master.pd
instrument1.pd
The arguments of the relocate message are about window size and position, but i don't know what the +1+1 and 1x1+ are for. 
ingox
@Dannielo The actual path to where the .pd files are has to be put in Preferences > Path. The entries in Preferences > Startup can be deleted to get rid of the error messages.