Зворотний зв'язок

Мова програмування Лiсп

2. (CDR list)- хвiст списку.

3. (CONS object list)- об'єднання (конкатенацiя) об'єкта зi списком.

4. (EQL atom1 atom2)- порiвняння двох атомiв.

5. (ATOM object)- перевiрка чи є object атомом.

CAR та CDR називаються селекторними функцiями, оскiльки вони дають можливiсть вибирати або знищувати частину об'єкта. Результатом функцiї (CAR list) завжди є перший елемент списку list, якщо вiн непорожнiй i NIL в iншому випадку. Результатом функцiї (CDR list) є список list без першого елемента, якщо list мiстить бiльш одного елемента i NIL в iншому випадку.

$ (CAR '(q w e r t y))$ (CDR '(q w e r t y))$ (CAR '((one 1) (two 2)))

q(w e r t y)(one 1)

$ (CAR '())$ (CDR '(tree))$ (CDR '((q w))$ (CDR '())

NILNILNILNILЗа допомогою функцiй CAR, CDR можна знаходити за даним списком будь-який його пiдсписок або атом. Дозволяється використовувати функцiї, якi є комбiнацiями CAR та CDR. Iмена таких функцiй починаються на C i закiнчуються на R, а мiж ними знаходиться послiдовнiсть лiтер A та D (але не бiльше 4 лiтер в реалiзацiї muLisp), яка вказує шлях обчислення.

$ (CAR (CDR (CDR '(q w e r t y))))$ (CAR (CDR (CDR '((q 1) (w 2) (e 3)))))

$ (CADDR '(q w e r t y)) $ (CADDR '((q 1) (w 2) (e 3)))

e(e 3)

$ (CDR (CDR '((q 1) (w 2) (e 3))))$ (CAR (CAR '((q w))))

$ (CDDR '((q 1) (w 2) (e 3)))$ (CAAR '((q w)))

((e 3))q

Функцiя конструктора CONS використовується для додання об'єкту до заданого списку. Об'єкт який додається, стає головою списку. Якщо другий аргумент не задано, то вiн вважається рiвним NIL.

$ (CONS '(q w) '(r (t y))) $ (CONS apple '(q w)) $ (CONS '(q w) '(r t y))$ (CONS 5)

((q w) r (t y)) (apple q w)((q w) r t y)(5)

Якщо результатом виразу (CONS object list) буде new, то результатом (CAR new) буде object, а результатом (CDR new) буде list.

$ (CAR (CONS '(q w) '(r (t y))))$ (CAR (CONS apple NIL))

(q w) apple

Функцiєю порiвняння є EQL. Вона порiвнює значення першого та другого аргумента, якi обов'язково повиннi бути атомами, та повертає значення iстини (Т) або хибностi (NIL).


Реферати!

У нас ви зможете знайти і ознайомитися з рефератами на будь-яку тему.







Не знайшли потрібний реферат ?

Замовте написання реферату на потрібну Вам тему

Замовити реферат