4.9.4. Heap
Ein Heap ist ein Pattern, bei dem in jeder Periode sämtliche Elemente des Patterns in einer Zufallsreihenfolge erscheinen. Auf diese Weise ist gewährleistet, dass innerhalb einer Periode jedes Element genau einmal erscheint.
(next (new heap :of '(1 2 3 4)) 40) ;; -> (2 4 3 1 ;; 1 2 3 4 ;; 1 3 4 2 ;; 3 2 4 1 ;; 1 3 4 2 ;; 3 4 1 2 ;; 1 2 3 4 ;; 4 1 3 2 ;; 1 2 4 3 ;; 4 2 3 1)