Rebol と Red は、一種の「自然な平等」として、通常のequal?
関数 (単に として提供される中置記号) の概念を持っています。=
したがって1 = 1.0
、一方が整数で他方が浮動小数点数であっても比較を行い、デフォルトで大文字と小文字を区別せずに文字列と文字を比較します。
このstrict-equal?
関数は大文字と小文字を区別し、同じデータ型であることを要求し==
、インフィックスとして関連付けられています。(strict-not-equal?
としての機能もあります!==
。)
ただし、他の比較演算子には厳密なバリアントがないようです。ボックス内のプリミティブを使用してastrict-greater?
または aなどをどのように実装しますか?strict-lesser-or-equal?
たとえば、動作は次のようになります。
>> strict-lesser? "A" "a"
== true