SICPゼミ第9回

練習問題2.43

(queen-cols (- k 1)) をk回呼び出しているのでごみ。

注意

これから先の範囲は図形言語を前提としているので、tube は Racket で、ほか三人は Gauche でがんばって図形言語を入れました。

続きを読む

SICPゼミ第8回

練習問題2.33
(define nil '())

(define (accumulate op initial sequence)
  (if (null? sequence)
      initial
      (op (car sequence)
          (accumulate op initial (cdr sequence )))))

(define (map p sequence)
  (accumulate (lambda (x y) (cons (p x) y)) nil sequence ))

(define (append seq1 seq2)
  (accumulate cons seq2 seq1))

(define (length sequence)
  (accumulate (lambda (x y) (+ y 1)) 0 sequence ))

by pine

(define (map p sequence)
  (accumulate (lambda (x y) (cons (p (car sequence)) (map p (cdr sequence)) )) nil sequence))
続きを読む

SICPゼミ第7回

練習問題2.24
練習問題2.25
(car (cdr (car (cdr (cdr (list 1 3 (list 5 7) 9))))))
(car (car (list (list 7))))
(car (cdr (car (cdr (car (cdr (car (cdr (car (cdr (car (cdr (list 1 (list 2 (list 3 (list 4 (list 5 (list 6 7))))))))))))))))))

by pine

(define x (list 1 3 (cons 5 7) 9))
(cdaddr x)

(define x (list (list 7)))
(caar x)

(define x (cons 1 (cons 2 (cons 3 (cons 4 (cons 5 (cons 6 7)))))))
(cddr (cddddr x))

by tube

どうもcaaaarとか調子乗ると死ぬっぽい

(cadr (caddr (list 1 3 (list 5 7) 9)))

は動くけど,

(cadaddr (list 1 3 (list 5 7) 9))

は死ぬ

続きを読む