ToC | DocOverview | CGDoc | RelNotes | Index | PermutedIndex
| Allegro CL

| ANSI Common Lisp 3 Evaluation and Compilation 3.7 Destructive Operations 3.7.2 Transfer of Control during a Destructive Operation ### 3.7.2.1 Examples of Transfer of Control during a Destructive Operation The following examples illustrate some of the many ways in which the implementation-dependent nature of the modification can manifest itself.
     (let ((a (list 2 1 4 3 7 6 'five)))
       (ignore-errors (sort a #'<))
       a)
     (1 2 3 4 6 7 FIVE)
    OR(2 1 4 3 7 6 FIVE)
    OR(2)

     (prog foo ((a (list 1 2 3 4 5 6 7 8 9 10)))
       (sort a #'(lambda (x y) (if (zerop (random 5)) (return-from foo a) (> x y)))))
     (1 2 3 4 5 6 7 8 9 10)
    OR(3 4 5 6 2 7 8 9 10 1)
    OR(1 2 4 3)

© Franz Inc. 1998-2019 - File last updated 02-07-2019