| レス数が950を超えています。1000を超えると表示できなくなるよ。 |
Emacs part3
[222:名無しさん@Emacs (01/12/25 14:46)]
Emacs に残りの人生をつぎこもうと思い勉強してみたのですが、
一つ疑問があります。
どうして、property list は
(type1 value1 type2 value2 ...)
の形式なのですか、どう考えても
((type1 . value1) (type2 . value2) ...)
が妥当だと思います。
これには何か訳があるのですか?
Unix お得意の 歴史的事情 ?
[223:名無しさん@お腹いっぱい。 (01/12/25 15:07)]
>>222
((type1 . value1) (type2 . value2) ...)
の形式だと plist ではなく alist でしょう。
同じ形式にするんならば plist と alist で分ける必要はない訳で。
俺も詳しい事はしらないけど、
((type1 . value1) (type2 . value2) ...)
よりも、
(type1 value1 type2 value2 ...)
の方が検索がはやく終わるんではないのかなと推測。
どうなんでしょう? -> 詳しい方
[224:名無しさん@Emacs (01/12/25 16:14)]
>>222 です。
alist と plist の違いは重複を許すか許さないかです。
plist に比べ alist の検索が速いとは思えないのですが。
[225:名無しさん@お腹いっぱい。 (01/12/25 20:00)]
plist: (eq 'key (car '(key val))
alist: (eq 'key (caar '((key val))))
はじめの一個は plist のほうが早いよ。
[226:名無しさん@お腹いっぱい。 (01/12/25 22:14)]
list の方が list の list ができるんで柔軟だよね
[227:名無しさん@Emacs (01/12/26 00:04)]
>>222
plistとUNIXには直接の関連はないと思うのですが…。
Lisp全般にあるデータ構造ですよね。
[228:名無しさん@お腹いっぱい。 (01/12/26 00:31)]
Emacs21 で scroll-bar の幅狭くしたいんですけど、
(modify-frame-parameters (selected-frame)
'((scroll-bar-width . 10)))
とか
(put 'scroll-bar-width 'x-frame-parameter 10)
とかしても変わりません。
customize-face の width もダメなんだけど、
どーしたらいい?
[229:名無しさん@お腹いっぱい。 (01/12/27 05:40)]
plist はシンボルの特殊なセルに入った list であるという
だけで, 別に alist でも構わないし, alist と対でもないよ. >>223
elisp manual の Property List の所に
'Plists and Alists' と対で書いてあるのでまぎらわしいけど.
だから >>222 の疑問も確かに納得できる.
[230:名無しさん@お腹いっぱい。 (01/12/27 12:50)]
#hogehoge#というファイルが作られるディレクトリを指定するには
どうしたらよいのでしょうか。
[231:名無しさん@お腹いっぱい。 (01/12/27 12:58)]
>>231
特定のディレクトリに入れてしまったら、
ファイル名が同じファイルを同時に編集しているときはどうするの?
read.cgi ver5.26+ (01/10/21-)