理系学生日記

おまえはいつまで学生気分なのか

問題2-47 (2.2.4 Example: A Picture Language)

まず

(define (make-frame origin edge1 edge2)
  (list origin edge1 edge2))

に対する選択子がこれ。

(define (get-origin frame)
  (car frame))
(define (get-edge1 frame)
  (cadr frame))
(define (get-edge2 frame)
  (caddr frame))

次に

(define (make-frame origin edge1 edge2)
  (cons origin (cons edge1 edge2)))

に対する選択子は

(define (get-origin frame)
  (car frame))
(define (get-edge1 frame)
  (cadr frame))
(define (get-edge2 frame)
  (cddr frame))