(rontolisp) docs
← マップ・セット・ベクター

compare

(compare x y)

clojure.core/compare: x が y より前・同じ・後ろに並ぶとき、それぞれ負の数・0・正の数を 返します。順序はオラクルと同じです。nil は何よりも前、数値は種類をまたいで値で比べ ((compare 1 1.0) は 0)、文字列・キーワード・シンボルは Java の compareTo と同じく 比べます(最初に異なる文字の差。名前空間のない名前が先)。文字は差を返し、false は true より前、ベクターは長さで比べてから要素を順に比べます。種類の違う2つの値や、順序の ない種類の値(リスト・マップ・セット)はシグナルを上げます。sorted-map/sorted-set の 順序であり、sort の比較関数にもなります。文字列はコードポイントで比べます。オラクルは UTF-16 の単位で比べるので、U+FFFF を超える文字で答えが変わります。値としては2引数の関数です。