So I've been working on this abstraction that is supposed to select a random element from a 'to use' list, without repeating until every element from the list has been selected.
Each time the list is fed in, another 'check' list stores what index has been used, checking to see if the random index generated has been previously used. If it hasn't, that index is used to pick from the 'to use' list. If the index has been used previously, then a new random number is generated.
If the length of the 'to do' list and the 'check' list are the same, then the 'check' list is cleared and the process starts from fresh.
Okay, so the abstraction I've made technically works. However, I am getting a nasty stack overflow problem when the 'check' list resets. When I trace the error from Pd says that it's coming from the [list-abs/list-find] abstraction I'm using.
Here's the patch: patch.zip
I'm struggling to find a way of getting over this error. Sort of stumped. Any help / a simpler way of getting around this problem would be great...