Среда программирования на AutoLISP в графической системе AutoCAD (Справочник), страница 4

сравнение “меньше или равно”. Если первый <атом> меньше или равен второму, возвращается Т, в противном случае – nil. Если в выражении более двух <атомов>, то возвращается Т, если каждый предыдущий атом меньше или равен последующему.

(> <атом> <атом>…)         

сравнение “больше”. Если первый <атом> больше второго, возвращается Т, в противном случае – nil. Если дано более двух <атомов>, то возвращается Т, если каждый предыдущий атом больше последующего.

(>= <атом> <атом>…)

сравнение “больше или равно”. Если первый <атом> больше или равен второму, возвращается Т, в противном случае – nil. Если дано более двух <атомов>, то возвращается Т, если каждый предыдущий атом больше или равен последующему.

(not <элемент>)

возвращает Т, если <элемент> nil, в противном случае nil.

(numberp <элемент>)

возвращает Т, если <элемент> целое или действительное число, в противном случае – nil.

(zerop <элемент>)

возвращает Т, если <элемент> действительное или целое число, равное нулю, в противном случае – nil. Функция не определена для других типов <элементов>.

(minusp <элемент>)

возвращает Т, если <элемент> действительное или целое число имеющее отрицательное значение, возвращает Т, в противном случае – nil. Функция не определена для других типов <элементов>.

(eq <выражение1> <выражение2>)

определяет идентичность выражений <выражение1>  и <выражение2>, т.е. относятся ли они к одному объекту, определённому, например, с помощью функции SETQ.EQ возвращает Т, если оба выражения идентичны, в противоположном случае – nil.

(equal <выражение1> <выражение2>[<точность>])

определяет, равны ли <выражение1> и <выражение2>, т.е. равны ли их значения. Параметр <точность> задаёт точность сравнения действительных чисел. Заметим, что если два списка идентичны по функции EQUAL, то они могут быть не равны по функции EQ. С другой стороны, два списка, которые равны по функции QE, всегда идентичны по функции EQUAL.

(bound <атом>)

возвращает Т, если <атом> имеет какое - либо значение (в широком смысле). Если <атом> не имеет никакого значения или равен nil, возвращается nil.

(listp <элемент>)

возвращается Т, если <элемент> есть список, в противоположном случае – nil.

(atom <элемент>)

Если <элемент> есть список, то возвращается nil, в противоположном случае – Т. Любой элемент, который не является списком, считается неделимым (т.е. атомом).

(null <элемент>)

возвращает Т, если <элемент> вычисляется в nil, иначе – nil.

(type <элемент>)

возвращает тип <элемента> как атом, т.е. одно из следующих значений:

REAL –   числа с плавающей запятой,

FILE –            описатель файлов,

STR –             строковые константы,

INT –              целые величины,

SYM –            символы,

LIST –            списки и функции пользователя,

SUBR –          внутренние функции AutoLISP,

EXSUBR–     ADS - функции (только R.11),

PITCKSET – наборы AutoCAD,

ENAME   --    имена примитивов AytoCAD,

PAGETB –    таблица диспетчера страниц.

3.4. Логические и побитовые функции

(and <выражение>...)

результат выполнения логического И над списком выражений. Возвращает

nil, если любое из выражений имеет значение nil, иначе – Т.

(or <выражение> ...)

возвращает логическое ИЛИ списка выражений. OR оценивает выражение слева на право до тех пор, пока не встретится выражение, вычисляемое не в nil. Если такое выражение найдено, OR прекращает дальнейшую оценку и возвращает Т. Если все выражения nil, OR возвращает nil.

(~ <число>)

логическое НЕТ (дополнение до единицы ). <Число> должно быть целым.

(logan <число> <число>...)

возвращает результат действия побитового И над списком <чисел>. Эти <числа> должны быть целыми, результат также целое число.