i i i i i i i ooooo o ooooooo ooooo ooooo I I I I I I I 8 8 8 8 8 o 8 8 I \ `+' / I 8 8 8 8 8 8 \ `-+-' / 8 8 8 ooooo 8oooo `-__|__-' 8 8 8 8 8 | 8 o 8 8 o 8 8 ------+------ ooooo 8oooooo ooo8ooo ooooo 8 Welcome to GNU CLISP 2.49 (2010-07-07) Copyright (c) Bruno Haible, Michael Stoll 1992, 1993 Copyright (c) Bruno Haible, Marcus Daniels 1994-1997 Copyright (c) Bruno Haible, Pierpaolo Bernardi, Sam Steingold 1998 Copyright (c) Bruno Haible, Sam Steingold 1999-2000 Copyright (c) Sam Steingold, Bruno Haible 2001-2010 Type :h and hit Enter for context help. [1]> (load "lp.lsp") ;; Loading file lp.lsp ... ;; Loaded file lp.lsp T [2]> (random-permutation '(a b c d e)) (B D E C A) [3]> (random-permutation '()) NIL [4]> (random-permutation '(1)) (1) [5]> (random-permutation '(1 2)) (2 1) [6]> (random-permutation '(1 2 3 4 5 6 7 8 9 10)) (10 5 6 9 7 4 2 8 1 3) [7]> (trace random-permutation ) ;; Tracing function RANDOM-PERMUTATION. (RANDOM-PERMUTATION) [8]> (random-permutation '(a 1 b 2 c 3)) 1. Trace: (RANDOM-PERMUTATION '(A 1 B 2 C 3)) 2. Trace: (RANDOM-PERMUTATION '(1 B 2 C 3)) 3. Trace: (RANDOM-PERMUTATION '(1 2 C 3)) 4. Trace: (RANDOM-PERMUTATION '(1 2 C)) 5. Trace: (RANDOM-PERMUTATION '(1 2)) 6. Trace: (RANDOM-PERMUTATION '(2)) 7. Trace: (RANDOM-PERMUTATION 'NIL) 7. Trace: RANDOM-PERMUTATION ==> NIL 6. Trace: RANDOM-PERMUTATION ==> (2) 5. Trace: RANDOM-PERMUTATION ==> (1 2) 4. Trace: RANDOM-PERMUTATION ==> (C 1 2) 3. Trace: RANDOM-PERMUTATION ==> (3 C 1 2) 2. Trace: RANDOM-PERMUTATION ==> (B 3 C 1 2) 1. Trace: RANDOM-PERMUTATION ==> (A B 3 C 1 2) (A B 3 C 1 2) [8]> (bye) Bye.