SeenBefore
keeps a history of all items and answers whether an item has been seen by the constraint
object before.
superclass: AbstractConstraint
(
s = SeenBefore.new;
100.do({ arg i;
var r;
r = 100.rand;
if(s.value(r).not,{
[i,r].postln;
})
});
[ 0, 88 ]
[ 1, 19 ]
[ 2, 71 ]
[ 3, 83 ]
[ 4, 56 ]
[ 5, 97 ]
[ 6, 98 ]
[ 7, 78 ]
[ 8, 65 ]
[ 9, 63 ]
[ 10, 7 ]
[ 11, 5 ]
[ 12, 30 ]
[ 13, 53 ]
[ 14, 15 ]
[ 15, 70 ]
[ 16, 74 ]
[ 17, 44 ]
[ 18, 18 ]
[ 19, 66 ]
[ 22, 6 ]
[ 23, 60 ]
[ 24, 42 ]
[ 25, 95 ]
[ 26, 62 ]
[ 27, 96 ]
[ 28, 29 ]
[ 29, 81 ]
[ 30, 49 ]
[ 31, 13 ]
[ 32, 47 ]
[ 33, 59 ]
[ 34, 61 ]
[ 36, 34 ]
[ 37, 1 ]
[ 38, 0 ]
[ 43, 25 ]
[ 44, 3 ]
[ 46, 20 ]
[ 50, 16 ]
[ 51, 76 ]
[ 54, 87 ]
[ 55, 99 ]
[ 56, 90 ]
[ 57, 36 ]
[ 59, 57 ]
[ 60, 67 ]
[ 61, 45 ]
[ 62, 94 ]
[ 66, 86 ]
[ 69, 92 ]
[ 71, 80 ]
[ 72, 91 ]
[ 75, 89 ]
[ 79, 69 ]
[ 81, 35 ]
[ 84, 10 ]
[ 86, 73 ]
[ 87, 2 ]
[ 89, 8 ]
[ 93, 33 ]
[ 95, 31 ]
[ 98, 23 ]
)