91 |
(stable-sort a #'char<)) |
(stable-sort a #'char<)) |
92 |
"00111") |
"00111") |
93 |
|
|
94 |
|
;;; Order of evaluation tests |
95 |
|
|
96 |
|
(deftest stable-sort.order.1 |
97 |
|
(let ((i 0) x y) |
98 |
|
(values |
99 |
|
(stable-sort (progn (setf x (incf i)) (list 1 7 3 2)) |
100 |
|
(progn (setf y (incf i)) #'<)) |
101 |
|
i x y)) |
102 |
|
(1 2 3 7) 2 1 2) |
103 |
|
|
104 |
|
(deftest stable-sort.order.2 |
105 |
|
(let ((i 0) x y z) |
106 |
|
(values |
107 |
|
(stable-sort (progn (setf x (incf i)) (list 1 7 3 2)) |
108 |
|
(progn (setf y (incf i)) #'<) |
109 |
|
:key (progn (setf z (incf i)) #'-)) |
110 |
|
i x y z)) |
111 |
|
(7 3 2 1) 3 1 2 3) |
112 |
|
|
113 |
|
|
114 |
;;; Error cases |
;;; Error cases |
115 |
|
|
116 |
(deftest stable-sort.error.1 |
(deftest stable-sort.error.1 |