Next: Building Lists, Previous: List-related Predicates, Up: Lists [Contents][Index]
¤³¤Î´Ø¿ô¤Ï¡¢¥³¥ó¥¹¥»¥ëcons-cell¤ÎºÇ½é¤Î¥Ý¥¤¥ó¥¿¤¬»Ø¤¹ÃͤòÊÖ¤¹¡£ Ê̤Τ¤¤¤Êý¤ò¤¹¤ì¤Ð¡¢cons-cell¤ÎCAR¤òÊÖ¤¹¡£
ÆÃÊ̤ʾì¹ç¤È¤·¤Æ¡¢cons-cell¤¬nil
¤Î¤È¤¤Ë¤Ï¡¢
car
¤Ïnil
¤òÊÖ¤¹¤ÈÄêµÁ¤¹¤ë¡£
¤·¤¿¤¬¤Ã¤Æ¡¢Ç¤°Õ¤Î¥ê¥¹¥È¤Ïcar
¤ÎÀµ¤·¤¤°ú¿ô¤Ç¤¢¤ë¡£
°ú¿ô¤¬¥³¥ó¥¹¥»¥ë¤Ç¤ânil
¤Ç¤â¤Ê¤±¤ì¤Ð¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£
(car '(a b c)) ⇒ a
(car '()) ⇒ nil
¤³¤Î´Ø¿ô¤Ï¡¢¥³¥ó¥¹¥»¥ëcons-cell¤Î2ÈÖÌܤΥݥ¤¥ó¥¿¤¬»Ø¤¹ÃͤòÊÖ¤¹¡£ Ê̤Τ¤¤¤Êý¤ò¤¹¤ì¤Ð¡¢cons-cell¤ÎCDR¤òÊÖ¤¹¡£
ÆÃÊ̤ʾì¹ç¤È¤·¤Æ¡¢cons-cell¤¬nil
¤Î¤È¤¤Ë¤Ï¡¢
cdr
¤Ïnil
¤òÊÖ¤¹¤ÈÄêµÁ¤¹¤ë¡£
¤·¤¿¤¬¤Ã¤Æ¡¢Ç¤°Õ¤Î¥ê¥¹¥È¤Ïcdr
¤ÎÀµ¤·¤¤°ú¿ô¤Ç¤¢¤ë¡£
°ú¿ô¤¬¥³¥ó¥¹¥»¥ë¤Ç¤ânil
¤Ç¤â¤Ê¤±¤ì¤Ð¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£
(cdr '(a b c)) ⇒ (b c)
(cdr '()) ⇒ nil
¤³¤Î´Ø¿ô¤Ï¡¢¥³¥ó¥¹¥»¥ë¤ÎCAR¤ò¼è¤ê½Ð¤¹¤¬¡¢
¾¤Î¥Ç¡¼¥¿·¿¤ËÂФ¹¤ë¥¨¥é¡¼¤ò²óÈò¤¹¤ë¡£
object¤¬¥³¥ó¥¹¥»¥ë¤Ê¤é¤Ðobject¤ÎCAR¤òÊÖ¤¹¤¬¡¢
¤µ¤â¤Ê¤±¤ì¤Ðnil
¤òÊÖ¤¹¡£
¤³¤ì¤Ïcar
¤ÈÂоÈŪ¤Ç¤¢¤ê¡¢
car
¤Ïobject¤¬¥ê¥¹¥È¤Ç¤Ê¤¤¤È¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£
(car-safe object) ≡ (let ((x object)) (if (consp x) (car x) nil))
¤³¤Î´Ø¿ô¤Ï¡¢¥³¥ó¥¹¥»¥ë¤ÎCDR¤ò¼è¤ê½Ð¤¹¤¬¡¢
¾¤Î¥Ç¡¼¥¿·¿¤ËÂФ¹¤ë¥¨¥é¡¼¤ò²óÈò¤¹¤ë¡£
object¤¬¥³¥ó¥¹¥»¥ë¤Ê¤é¤Ðobject¤ÎCDR¤òÊÖ¤¹¤¬¡¢
¤µ¤â¤Ê¤±¤ì¤Ðnil
¤òÊÖ¤¹¡£
¤³¤ì¤Ïcdr
¤ÈÂоÈŪ¤Ç¤¢¤ê¡¢
cdr
¤Ïobject¤¬¥ê¥¹¥È¤Ç¤Ê¤¤¤È¥¨¥é¡¼¤òÄÌÃΤ¹¤ë¡£
(cdr-safe object) ≡ (let ((x object)) (if (consp x) (cdr x) nil))
¤³¤Î´Ø¿ô¤Ï¡¢list¤ÎnÈÖÌܤÎÍ×ÁǤòÊÖ¤¹¡£
Í×ÁǤÏ0¤«¤é¿ô¤¨¤ë¤Î¤Ç¡¢list¤ÎCAR¤ÏÍ×ÁÇÈÖ¹æ0¡£
list¤ÎŤµ¤¬n¤«¤½¤ì̤Ëþ¤Ç¤¢¤ë¤È¡¢ÃͤÏnil
¤Ë¤Ê¤ë¡£
n¤¬Éé¤Ç¤¢¤ë¤È¡¢nth
¤Ïlist¤ÎºÇ½é¤ÎÍ×ÁǤòÊÖ¤¹¡£
(nth 2 '(1 2 3 4)) ⇒ 3
(nth 10 '(1 2 3 4)) ⇒ nil
(nth -3 '(1 2 3 4)) ⇒ 1 (nth n x) ≡ (car (nthcdr n x))
´Ø¿ôelt
¤âƱÍͤǤ¢¤ë¤¬¡¢Ç¤°Õ¤Î¥·¡¼¥±¥ó¥¹¤ËŬÍѤǤ¤ë¡£
Îò»ËŪ¤ÊÍýͳ¤Ç°ú¿ô¤Î½ç½ø¤ÏµÕ¤Ç¤¢¤ë¡£
see Sequence Functions¡£
¤³¤Î´Ø¿ô¤Ï¡¢list¤ÎnÈÖÌܤÎCDR¤òÊÖ¤¹¡£ ¤¤¤¤¤«¤¨¤ì¤Ð¡¢list¤Î»Ï¤á¤În¸Ä¤Î¥ê¥ó¥¯¤òÈô¤Ó±Û¤¨¤Æ¡¢ ¤½¤Î¤¢¤È¤Ë¤¢¤ë¤â¤Î¤òÊÖ¤¹¡£
n¤¬0¤«Éé¤Ç¤¢¤ë¤È¡¢nthcdr
¤ÏlistÁ´ÂΤòÊÖ¤¹¡£
list¤ÎŤµ¤¬n¤«¤½¤ì̤Ëþ¤Ç¤¢¤ë¤È¡¢
nthcdr
¤Ïnil
¤òÊÖ¤¹¡£
(nthcdr 1 '(1 2 3 4)) ⇒ (2 3 4)
(nthcdr 10 '(1 2 3 4)) ⇒ nil
(nthcdr -3 '(1 2 3 4)) ⇒ (1 2 3 4)
¤³¤Î´Ø¿ô¤Ï¡¢¥¨¥é¡¼¤ä̵¸Â¥ë¡¼¥×¤ò²óÈò¤·¤Æ¡¢list¤ÎŤµ¤òÊÖ¤¹¡£
list¤¬¼ÂºÝ¤Ë¤Ï¥ê¥¹¥È¤Ç¤Ê¤¤¾ì¹ç¤Ë¤Ï¡¢safe-length
¤Ï0¤òÊÖ¤¹¡£
list¤Ë½Û´Ä¤¬¤¢¤ë¤È¡¢¾¯¤Ê¤¯¤È¤â°Û¤Ê¤ëÍ×ÁǤθĿô¤òɽ¤¹Í¸ÂÃͤòÊÖ¤¹¡£
½Û´Ä¤Ï¤Ê¤¤¤È»×¤ï¤ì¤ë¥ê¥¹¥È¤ÎŤµ¤ò·×»»¤¹¤ë¤â¤Ã¤È¤â°ìÈÌŪ¤ÊÊýË¡¤Ï¡¢
length
¤Ç¤¹¡£
See Sequence Functions¡£
¤³¤ì¤Ï(car (car cons-cell))
¤ÈƱ¤¸¡£
¤³¤ì¤Ï(car (cdr cons-cell))
¤ä
(nth 1 cons-cell)
¤ÈƱ¤¸¡£
¤³¤ì¤Ï(cdr (car cons-cell))
¤ÈƱ¤¸¡£
¤³¤ì¤Ï(cdr (cdr cons-cell))
¤ä
(nthcdr 2 cons-cell)
¤ÈƱ¤¸¡£
Next: Building Lists, Previous: List-related Predicates, Up: Lists [Contents][Index]