2002-05-02 [長年日記]
λ. 僕がK君を見ていてイライラするのは、彼の中に自分と同じ弱さを見てしまっているからなのだと最近気が付いた。これからは暖かく見守ってあげよう。
λ. 拡張子
ファイルの拡張子でアプリケーションに関連づけるというのは、窓OSに限らずにわりと色々な場面で使われている。でも、ディレクトリに拡張子をつけるという話は聞いたことがない。ファイルに拡張子を付けるのならば、ディレクトリにも付けるのが自然に思えるが、いったい何故だろうか?
λ. 資本主義経済の幻想
- 「コモンセンスとしての経済学」という副題は気に入った
- 訳はイマイチかも。p.137に「ネットで見て 〜」という部分があるけど、 一般向きの本なのだから、普通は「ネット」って「正味」って訳すんでないの?
- 「解題」は毒にも薬にもならないので余計
λ. Classificationと情報射の圏
19日に「チャネル理論のClassificationは情報射を射とする圏をなすようだ」と書いた。証明は簡単なんだけど、このままだとClassificationや情報射の定義を忘れてしまいそうなので、Classificationと情報射の定義を含めてメモしておこう。
- 定義
-
- オブジェクト(= Classification)
-
オブジェクト A は、
- タイプの集合 typ(A)
- トークンの集合 tok(A)
- トークンとタイプの間の関係 ⊨A
- 射(= 情報射)
-
射 f: A→B は、α∈typ(A), b∈tok(B) について
ftok(b) ⊨A α
iff
b ⊨B ftyp(α) であるような
- ftyp: typ(A)→typ(B)
- ftok: tok(B)→tok(A)
- 射の結合
-
射 f: A→B, g: B→C の結合 gf: A→C を、
- (gf)typ = gtypftyp
- (gf)tok = ftokgtok
- 恒等射
-
恒等射 1A: A→A を
- (1A)typ = 1typ(A)
- (1A)tok = 1tok(A)
- 証明
-
- 射の結合が射になることの証明
-
射 f: A→B, g: B→C の結合 gf: A→C が射の条件を満たしている事を示す。
-
fが射であることより、
ftok(b) ⊨A α iff b ⊨B ftyp(α)
⇒ ftok(gtok(c)) ⊨A α iff gtok(c) ⊨B ftyp(α) …(1) -
gが射であることより、
gtok(c) ⊨B β iff c ⊨C gtyp(β)
⇒ gtok(c) ⊨B ftyp(α) iff c ⊨C gtyp(ftyp(α)) …(2)
(gf)tok(c) ⊨A α iff c ⊨C (gf)typ(α)
∴ gfは射 -
fが射であることより、
- 射の結合律
-
f: A→B, g: B→C, h: C→D について、
- (h(gf))typ = htyp(gtypftyp) = (htypgtyp)ftyp = ((hg)f)typ
- (h(gf))tok = (gf)tokhtok = ftokgtokhtok = ftok(hg)tok = ((hg)f)tok
- 1Aが射であることの証明
-
1A: A→A は、
α∈typ(A), a∈tok(A) について、定義より明らかに、
- (1A)tok(a) = 1tok(A)(a) = a
- (1A)typ(α) = 1typ(A)(α) = α
- 恒等射
-
-
f: B→Aについて、
- (1A・f)typ = 1typ(A)・ftyp = ftyp
- (1A・f)tok = ftok・1tok(A) = ftok
-
g: A→C について、
- (g・1A)typ = gtyp・1typ(A) = gtyp
- (g・1A)tok = 1tok(A)・gtok = gtok
-
f: B→Aについて、
ディレクトリはディレクトリっていう種類のファイルだから、とか「拡張子なし」がディレクトリだから、とかそんなとこじゃないかと。
そうなんだけど、もっと細分化する事とか、<br>ディレクトリを「構造を持った一つのオブジェクト」として捉える視点とかって<br>誰も考えなかったのかなと。<br><br>それと、現在、コンパウンドドキュメント等のように、<br>ファイル内にディレクトリ構造を持っているファイル形式が存在するけど、<br>どうしてファイルシステムのディレクトリを使って実現しなかったのかな?<br>とか気になったり。
3年も前の日記にツッコミ入れますが、MacOS Xではディレクトリに拡張子を付けるってのをやってますね。<br>たとえば、MailやEclipseのようなアプリケーションは、ファインダ上は通常は1つのファイルに見えてますが、Mail.app とか Eclipse.app みたいなディレクトリ(フォルダ?)です。中にプラットフォームごとのバイナリとか、国際化リソースとか、いろいろ入ってます。
おー、MacOS X ではやっていたのですね。<br>ということはNeXTもそうだったのかな……<br>情報ありがとうございます。