Каждая функция из данного раздела требует, чтобы все аргументы были числами. Использование в качестве аргумента не числа является ошибкой. Если не указано иное, то каждая функция работает со всеми типами чисел, автоматически выполняя необходимые приведения, когда типы аргументы различаются.
[Функция]
= number &rest more-numbersКаждая из этих функций принимает один и более аргументов. Если последовательно аргументов удовлетворяет следующему условию:
тогда предикат истинен, иначе ложен. Комплексные числа могут сравниваться с помощью = и /=, но остальные предикаты требуют некомплексных аргументов. Два комплексных числа равны =, если их действительные части равны между собой и мнимые равны между собой с помощью предиката =. Комплексное число может быть сравнено с некомплексным с помощью = или /=. Например
С двумя аргументами, эти функции выполняют обычные арифметические сравнения. С тремя и более аргументами, они полезны для проверок рядов, как показано в следующем примере:
Обоснование: Отношение «неравенства» называется /=, а не <> (как в Pascal’е) по двум причинам. Первое, /= для более чем двух аргументов не означает то же, что и или <, или >. Второе, неравенство для комплексная не означает то же, что и < и >. По этим двум причинам неравенство не означает больше или меньше.
Аргументы могут быть некомплексными числами. max возвращает наибольший аргумент (ближайший к положительной бесконечности). max возвращает наименьший аргумент (ближайший к отрицательной бесконечности).
Для max, если аргументы являются смесью из дробных и с плавающей точкой чисел, и наибольший является дробным, реализация может вернуть как дробное число, так и его аппроксимацию с плавающей точкой. Если наибольший аргумент является числом с плавающей точкой меньшего формата в сравнении с числом большего формата, то реализация может вернуть число без изменения, либо конвертировать его в больший формат. More concisely, the implementation has the choice of returning the largest argument as is or applying the rules of floating-point contagion, taking all the arguments into consideration for contagion purposes. Если среди наибольших два аргумента равны, то реализация может вернуть любой из них. Те же правила применяются и ко второй функции min (только «наибольший аргумент» нужно заменить на «наименьший аргумент»).