#:g1: CADRでSICP Exercise 1.1

Posted 2007-04-19 08:57:00 GMT

CADRでSICP Exercise 1.1.に挑戦 - Structure and Interpretation of Computer Programs

今回から1.1から順にSICPの問題に挑戦。

Exercise 1.1
インタプリタに式を入力して結果を観察。

10
-> 10.

(+ 5 3 4) -> 12.

(- 9 1) -> 8.

(+ (* 2 4) (- 4 6)) -> 6.

(defvar a 3) -> NIL

(defvar b (+ a 1)) -> NIL

(= a b) -> NIL

(if (and (> b a) (< b (* a b))) b a) -> 4.

(cond ((= a 4) 6) ((= b 4) (+ 6 7 a)) ('T 25)) -> 16.

(* (cond ((> a b) a) ((< a b) b) ('T -1)) (+ a 1)) -> 16.

Lisp Machine Lisp固有と思われるところ:
・defvarが値をセットした時にNILを返すところ。

Maclispもそうなのかと思って試してみたら、Maclispは、
変数名を返す。Gaucheでも、SBCLでもそう。この辺は、
言語仕様なのか、処理系依存なのか調べないと分からな
い…けど…まあ…良いか(´▽`*)

comments powered by Disqus