#сортировка про которую Иван не хотел писать в книге.
Никто не подскажет как реализовать дополнительный компаратор, если результат сравнения по первому признаку подтверждает равенство аргументов? Например: есть вот такой вектор с мапами:
[ {:title "president", :company "Bapple",
:from {:year 2011, :month 8},
:to {:year 2020, :month 6}}
{:title "director of sales", :company "CIBM",
:from {:year 1989, :month 1},
:to {:year 2003, :month 1}},
{:title "manager", :company "Ray Ban",
:from {:year 2003, :month 2},
:to {:year 2020, :month 9}}]
Как мне получить обратно отстортированную по дате посленего места работы с учетом месяца последовательность?
Я запилил вот такую штуку, по году она сортирует, а по месяцу нет.
(defn sort-by-job-exp [coll]
(reverse
(sort (fn [x y]
(if (= (:year (:to x)) (:year (:to y)) )
(compare (:month (:year (:to x))) (:month (:year (:to y))))
(compare (:year (:to x)) (:year (:to y)))))
(:jobsExperience coll))))

А, ну если без либ, то твоя сортировка это вот так, если я всё правильно понял
(sort-by (comp (juxt :year :month) :to) (comp - compare) jobs)