Примітивні об’єкти даних, Детальна інформація
Примітивні об’єкти даних
мале NIL T MACRO 5.6
велике LAMBDA NLAMBDA $ (CDR 1212) $ (CDR -121212)
дробове MACRO SPECIAL NIL NLAMBDA
Значення атрибута знака доступне як CDR-елемент числа.
— довжина. Якщо число є малим цілим, то цей атрибут містить значення цілого. Якщо число — велике ціле, то елемент ‘довжина’ містить довжину слова вектора числа. Якщо число дробове — елемент містить вказівник на його чисельник, який обов’язково повинен бути цілим (додатним або від’ємним).
— вектор. Якщо число мале ціле, то значення атрибута є вказівником на інше мале ціле (хеш-з’єднувач). Якщо число велике ціле, то це поле містить вказівник на найменший значущий байт. Якщо число дробове — елемент містить вказівник на його знаменник, який повинен бути додатним цілим числом.
Функція порівняння EQL може використовуватися для порівняння чисел. Але більш загальною функцією для порівняння множини чисел є рівність:
$ (EQL -3 4) $ (EQL 4 4) $ (= 2 2 2) $ (= 2 2 3 2)
NIL T T NIL
Дробові числа можуть подаватися у десятковому вигляді та з дробовою рискою. Внутрішня змінна *PRINT-POINT* відповідає за тип виведення дробових чисел. Якщо вона дорівнює NIL, то всі дробові числа подаються на виведення з дробовою рискою. Якщо *PRINT-POINT* = n, то дробові числа виводяться з n знаками після десяткової коми. При введенні дробового числа воно автоматично скорочується.
$ 3/4 $ 3/9 $ 5/1 $ 12/9
3/4 1/3 5 4/3
Внутрішня змінна *PRINT-BASE* відповідає за основу системи числення, в якій обробляються числа. Якщо значення цієї змінної є цілим та перебуває в інтервалі від 2 до 32, то такою і буде основа системи числення, інакше muLisp працює в десятковій системі числення.
$ (SETQ ten 10) $ (SETQ *PRINT-BASE* 2) $ 234
$ (SETQ *PRINT-BASE* 16) $ ten 11101010
$ ten 1010
0A
A
I
Т, якщо її аргумент є цілим числом та NIL інакше. Функція NUMBERP розпізнає число.
$ (INTEGERP 100) $ (INTEGERP 3.5)
T NIL
$ (NUMBERP 3.5) $ (NUMBERP 4/5)
T T
Число в подвійних лапках завжди є символом:
$ (SYMBOLP "23") $ (NUMBERP "23")
T NIL
Символи та числа є атомами. Наступні вирази повертають істину: (ATOM 3.5), (ATOM "23"), (ATOM ‘APPLE).
Конс є примітивним об’єктом, який вказує на будь-які два інші об’єкти даних.. Він не є атомом. Назва конс пішла від функції конструктора CONS. Кожен конс склада- ється з CAR- та CDR- елементів. Конс часто називають точковою парою. Якщо X і Y об’єкти даних, то вираз (X . Y) є консом, CAR-елемент якого є X, а CDR-елемент – Y.
$ (SETQ A (cons X Y)) $ (CAR A) $ (CDR A) $ (CDR ‘(R . S))
велике LAMBDA NLAMBDA $ (CDR 1212) $ (CDR -121212)
дробове MACRO SPECIAL NIL NLAMBDA
Значення атрибута знака доступне як CDR-елемент числа.
— довжина. Якщо число є малим цілим, то цей атрибут містить значення цілого. Якщо число — велике ціле, то елемент ‘довжина’ містить довжину слова вектора числа. Якщо число дробове — елемент містить вказівник на його чисельник, який обов’язково повинен бути цілим (додатним або від’ємним).
— вектор. Якщо число мале ціле, то значення атрибута є вказівником на інше мале ціле (хеш-з’єднувач). Якщо число велике ціле, то це поле містить вказівник на найменший значущий байт. Якщо число дробове — елемент містить вказівник на його знаменник, який повинен бути додатним цілим числом.
Функція порівняння EQL може використовуватися для порівняння чисел. Але більш загальною функцією для порівняння множини чисел є рівність:
$ (EQL -3 4) $ (EQL 4 4) $ (= 2 2 2) $ (= 2 2 3 2)
NIL T T NIL
Дробові числа можуть подаватися у десятковому вигляді та з дробовою рискою. Внутрішня змінна *PRINT-POINT* відповідає за тип виведення дробових чисел. Якщо вона дорівнює NIL, то всі дробові числа подаються на виведення з дробовою рискою. Якщо *PRINT-POINT* = n, то дробові числа виводяться з n знаками після десяткової коми. При введенні дробового числа воно автоматично скорочується.
$ 3/4 $ 3/9 $ 5/1 $ 12/9
3/4 1/3 5 4/3
Внутрішня змінна *PRINT-BASE* відповідає за основу системи числення, в якій обробляються числа. Якщо значення цієї змінної є цілим та перебуває в інтервалі від 2 до 32, то такою і буде основа системи числення, інакше muLisp працює в десятковій системі числення.
$ (SETQ ten 10) $ (SETQ *PRINT-BASE* 2) $ 234
$ (SETQ *PRINT-BASE* 16) $ ten 11101010
$ ten 1010
0A
A
I
Т, якщо її аргумент є цілим числом та NIL інакше. Функція NUMBERP розпізнає число.
$ (INTEGERP 100) $ (INTEGERP 3.5)
T NIL
$ (NUMBERP 3.5) $ (NUMBERP 4/5)
T T
Число в подвійних лапках завжди є символом:
$ (SYMBOLP "23") $ (NUMBERP "23")
T NIL
Символи та числа є атомами. Наступні вирази повертають істину: (ATOM 3.5), (ATOM "23"), (ATOM ‘APPLE).
Конс є примітивним об’єктом, який вказує на будь-які два інші об’єкти даних.. Він не є атомом. Назва конс пішла від функції конструктора CONS. Кожен конс склада- ється з CAR- та CDR- елементів. Конс часто називають точковою парою. Якщо X і Y об’єкти даних, то вираз (X . Y) є консом, CAR-елемент якого є X, а CDR-елемент – Y.
$ (SETQ A (cons X Y)) $ (CAR A) $ (CDR A) $ (CDR ‘(R . S))
The online video editor trusted by teams to make professional video in
minutes
© Referats, Inc · All rights reserved 2021