История изменений
Исправление ugoday, (текущая версия) :
что внутри списка не простые сравниваемые сущности
Значит и функцию сортировки нужно передать не простую:
CL-USER> (sort '((1 "Jon") (2 "Jan") (3 "Иван"))
#'(lambda (x y) (funcall #'> (car x) (car y))))
((3 "Иван") (2 "Jan") (1 "Jon"))
CL-USER> (sort '((1 "Jon") (2 "Jan") (3 "Иван"))
#'(lambda (x y) (funcall #'string<= (cadr x) (cadr y))))
((2 "Jan") (1 "Jon") (3 "Иван"))
CL-USER>
Однако, это всё к делу не относится. Лучше объясни, в какой момент (list ...) стал объектом (или классом?)?
Исходная версия ugoday, :
что внутри списка не простые сравниваемые сущности
Значит и функцию сортировки нужно передать не простую:
CL-USER> (sort '((1 "Jon") (2 "Jan") (3 "Иван"))
#'(lambda (x y) (funcall #'> (car x) (car y))))
((3 "Иван") (2 "Jan") (1 "Jon"))
CL-USER> (sort '((1 "Jon") (2 "Jan") (3 "Иван"))
#'(lambda (x y) (funcall #'string<= (cadr x) (cadr y))))
((2 "Jan") (1 "Jon") (3 "Иван"))
CL-USER>