2009/03/31

[The Little Schemer]cdr

The Little Schemer」P.6 ~

 

  • The Law of Cdr
    • The primitive cdr is defined only for non-empty lists. The cdr of any non-empty list is always another list.
    • 組み込み手続きcdrは空でないlistに対してのみ有効。空でないlistのcdrは常に別のlistとなる。
    • 読み
      • could-er
      • クダー(クッダー?)

 

(cdr '(a b c))
;; => (b c)
  • (cdr '(a b c))
    • (b c)
    • (b c)は(car '(a b c))を除いたlist

 

(cdr '((a b c) x y z))
;; =>  (x y z)
(cdr '(hamburger))
;; => ()
(cdr '((x) t r))
;; => (t r)
(cdr 'hotdogs)
;; => error
(cdr '())
;; => error
  • cdr
    • atomに対して適用することはできない
    • null list (empty list)に対して適用することはできない

 

(car (cdr '((b) (x y) ((c)))))
;; => (((c)))
  1. (cdr '((b) (x y) ((c))))
    • ((x y) ((c)))
  2. (car '((x y) ((c))))
    • (((c)))
(cdr (car '(a (b (c)) d)))
;; => error
  1. (car '(a (b (c)) d))
    • a
  2. (cdr a)
    • error

 

 

  • car、cdr
    • atomには適用できない
    • null list(empty list)以外のlistを引数に取る

0 件のコメント:

コメントを投稿