[xyzzy:01033] Re: site-lisp について
- Subject: [xyzzy:01033] Re: site-lisp について
- From: Tetsuya Kamei <kamei@xxxxxxxxxxxx>
- X-mailer: Denshin 8 Go V321.2b5
- X-yzzy-version: 0.0.0.66
島田さん、こんにちは。
Fri, 13 Nov 1998 17:14:56 +0900 の
“[xyzzy:01030] Re: site-lisp について”
への返事です.
| |(setq private-load-path "c:/usr/home/lisp")
| |(setq *load-path* (cons private-load-path *load-path*))
これでいいはずなんですけど(^^;
元の *load-path* の値が変みたいです。
| 不都合ないならこだわりませんが、Lisp への好奇心という
| ことで、質問します。
不都合はたぶんあります(^^;
| というふうに返ってきます。この真ん中の . は何でしょう?
(a . b) というのはドット対と呼ばれています。
(a b c) という表記法は、実際には (a . (b . (c . nil))) という構
造をしているのですが、以下の規則によって (a b c) と書くようにな
っています。
1) cdr [`.'の右側] が nil の場合は、`.' と `()' を省略する。
2) cdr が `.' を含まないリストの場合は `()' を省略する。
従って、
(a . (b . (c . nil)))
--> (a . (b . (c)))
--> (a . (b c))
--> (a b c)
というように省略できます。
で、どんな不都合があるかですが、一般にリストを扱う関数は、car
[`.'の左側] しか相手にしないので、*load-path* が
("c:/usr/home/lisp" . "c:/usr/home/bin/xyzzy/lisp")
の場合、"c:/usr/home/bin/xyzzy/lisp" が無視されてしまいます。
--
亀井哲弥(Tetsuya Kamei)
kamei@xxxxxxxxxxxx/JCA00343@xxxxxxxxxxx