SICP

SICP2.53~2.58 記号データ 〜記号微分に挑む!〜

これまで扱ってきたデータは数値だった。これを任意の記号に拡張することで、記号微分()なんかも可能にしようぜ!という話。 ;2.53 gosh> (list 'a 'b 'c) (a b c) gosh> (list (list 'george)) ((george)) gosh> (cdr '((x1 x2) (y1 y2))) ((y1 y2)) gosh…

SICP2.38〜2.43 エイトクィーンパズルに挑む

■問題 2.40 与えられた整数nに対し、1≦j まずunique-pairsを定義しましょう。いきなり取り掛かるのは難しいので、とりあえずi≦nまでの並びを生成する手続き、enumerate-intervalを定義します。enumerate-intervalは例えばn = 5, i = 3だとしたら、(3 4 5)と…