Hatena::Groupcadr

bulbのLisp日記 RSSフィード

2008-02-03

[][]3.2 21:37 3.2 - bulbのLisp日記 を含むブックマーク はてなブックマーク - 3.2 - bulbのLisp日記

3.2 Special Forms

p.50-53

3.1, 3.2は、Norvig先生からLispの書き方を教わっている感じですね。

とてもためになります。


Lispで構造体。

(defstrruct name
    first
  (middle nil)
  last)

(setf b (make-name :first 'Paul :last 'Graham))

(name-first b)
#=> PAUL

(name-middle b)
#=> NIL

(name-last b)
#=> GRAHAM

(name-p b)
#=> T

(name-p 'Paul)
#=> NIL

(setf (name-middle b) 'Q)
#=> Q

b
#=> #S(NAME :FIRST PAUL :MIDDLE Q :LAST GRAHAM)


2008-01-27

[][]3.1 22:19 3.1 - bulbのLisp日記 を含むブックマーク はてなブックマーク - 3.1 - bulbのLisp日記

3.1 A Guide to Lisp Style

p.48-50

明確に書くこと。
抽象化しろ。
簡潔に書くこと。
すでにあるLisp関数を使うこと。
一貫性。

まだAIまでたどり着いてないですが、

この本は、Common Lispを学ぶには良いですよ。

(英文も多分やさしい方だと思います)