(defun replace (array old_value new_value) (cond ((null array) array) ((eql old_value (car array)) (cons new_value (replace (cdr array) old_value new_value))) (t (cons (car array) (replace (cdr array) old_value new_value))) ) ) (setf a '(6 5 4 3 0 1 5 3 3 1)) (setf b (replace '(8 1 8 2 3 8) 8 5)) (print b)
(replace '(8 1 8 2 3 8) 8 5)
(5 1 5 2 3 5)
Warning: reserving address range 0x80000c0000...0x1fffffffffff that contains memory mappings. clisp might crash later!
Memory dump:
0x8000000000 - 0x80000bffff
0x151708c00000 - 0x151708ee4fff
0x151709015000 - 0x151709039fff
0x15170903a000 - 0x1517091acfff
0x1517091ad000 - 0x1517091f5fff
0x1517091f6000 - 0x1517091f8fff
0x1517091f9000 - 0x1517091fbfff
0x1517091fc000 - 0x1517091fffff
0x151709200000 - 0x151709202fff
0x151709203000 - 0x151709401fff
0x151709402000 - 0x151709402fff
0x151709403000 - 0x151709403fff
0x151709480000 - 0x15170948ffff
0x151709490000 - 0x1517094c3fff
0x1517094c4000 - 0x1517095fafff
0x1517095fb000 - 0x1517095fbfff
0x1517095fc000 - 0x1517095fefff
0x1517095ff000 - 0x1517095fffff
0x151709600000 - 0x151709603fff
0x151709604000 - 0x151709803fff
0x151709804000 - 0x151709804fff
0x151709805000 - 0x151709805fff
0x151709868000 - 0x15170986bfff
0x15170986c000 - 0x15170986cfff
0x15170986d000 - 0x15170986efff
0x15170986f000 - 0x15170986ffff
0x151709870000 - 0x151709870fff
0x151709871000 - 0x151709871fff
0x151709872000 - 0x15170987ffff
0x151709880000 - 0x15170988dfff
0x15170988e000 - 0x15170989afff
0x15170989b000 - 0x15170989efff
0x15170989f000 - 0x15170989ffff
0x1517098a0000 - 0x1517098a0fff
0x1517098a1000 - 0x1517098a6fff
0x1517098a7000 - 0x1517098a8fff
0x1517098a9000 - 0x1517098a9fff
0x1517098aa000 - 0x1517098aafff
0x1517098ab000 - 0x1517098abfff
0x1517098ac000 - 0x1517098d9fff
0x1517098da000 - 0x1517098e8fff
0x1517098e9000 - 0x15170998efff
0x15170998f000 - 0x151709a25fff
0x151709a26000 - 0x151709a26fff
0x151709a27000 - 0x151709a27fff
0x151709a28000 - 0x151709a3bfff
0x151709a3c000 - 0x151709a63fff
0x151709a64000 - 0x151709a6dfff
0x151709a6e000 - 0x151709a6ffff
0x151709a70000 - 0x151709a75fff
0x151709a76000 - 0x151709a78fff
0x151709a7b000 - 0x151709a7bfff
0x151709a7c000 - 0x151709a7cfff
0x151709a7d000 - 0x151709a7dfff
0x151709a7e000 - 0x151709a7efff
0x151709a7f000 - 0x151709a7ffff
0x151709a80000 - 0x151709a86fff
0x151709a87000 - 0x151709a89fff
0x151709a8a000 - 0x151709a8afff
0x151709a8b000 - 0x151709aabfff
0x151709aac000 - 0x151709ab3fff
0x151709ab4000 - 0x151709ab4fff
0x151709ab5000 - 0x151709ab5fff
0x151709ab6000 - 0x151709ab6fff
0x55910fbf9000 - 0x55910fce9fff
0x55910fcea000 - 0x55910fdf3fff
0x55910fdf4000 - 0x55910fe53fff
0x55910fe55000 - 0x55910fe83fff
0x55910fe84000 - 0x55910feb4fff
0x55910feb5000 - 0x55910feb8fff
0x5591117e4000 - 0x559111804fff
0x7ffee488f000 - 0x7ffee48affff
0x7ffee49c6000 - 0x7ffee49c9fff
0x7ffee49ca000 - 0x7ffee49cbfff
WARNING: DEFUN/DEFMACRO(REPLACE): #<PACKAGE COMMON-LISP> is locked
Ignore the lock and proceed
WARNING: DEFUN/DEFMACRO: redefining function REPLACE in
/home/O3nfjO/prog.lisp, was defined in C