問題3.12、問題3.13 – SICP(計算機プログラムの構造と解釈)その113

問題3.12

append を使って連結した場合。

SICP 問題3.12 その1

append! を使って連結した場合。

SICP 問題3.12 その2

問題3.13

(define (make-cycle x)
  (set-cdr! (last-pair x) x)
  x)

(define z (make-cycle (list 'a 'b 'c)))
z
gosh> #0=(a b c . #0#)

(define z (make-cycle (list 'a 'b 'c))) で作り出す z の箱とポインタ図。

SICP 問題3.13

z に対して (last-pair z) を実行すると循環し続ける。

計算機プログラムの構造と解釈
ジェラルド・ジェイ サスマン ジュリー サスマン ハロルド エイブルソン
ピアソンエデュケーション
売り上げランキング: 6542
«
»