ファイル主義

=ファイルについて=

//「ファイル主義」は亡霊でない//
電子化されたマーケット/互いに結び合わされた情報網のなかで、キャッシュ(現金)がなおも/むしろますますリアルであるように、コンピュータにおいて「仮想現実」や「電脳空間」などよりはるかにリアルであるのは「ファイル」である。なんとなれば、現行のオペレーション・システムにおいて、コンピュータの行うあらゆる「情報処理」は、畢竟「ファイル・オペレーション(ファイル加工)」に他ならないからである。

//ファイルとは何か?//
ファイルとは、ランダムにアクセスできる二次記録装置から一次記録装置への「読みだし」の形態に他ならない。
一次記録(ランダム・アクセス・メモリ)の上では、親兄弟もプログラムもデータもない。これがノイマン型アーキテクチャアである。プログラムは、開始アドレスへのジャンプ(プログラム・カウンタの書き換え)によって開始される。CPUは一定の規則に従いカウントされる「プログラム・カウンタ」の指し示すアドレスのデータを、「命令」として解釈し実行していく。したがってメモリ上の任意の範囲を占有する「データ」群のうち、「開始アドレスへのジャンプ」によって指し示されるアドレスから、一定の規則に従いプログラムカウンタが「遍歴する」すべてのアドレスに書き込まれているもの、が即ちプログラムである。「プログラム」は、ただプログラム・カウンタによってインデックスされる限りで「実在」する。それは実行されないかぎり、決定されない(作り手の意思においては、「ここからここまで」がプログラムであると考えられているとしても、実際の実行においては、作り手の意思に反して(しかし一定の規則どおりに)違った領域のデータまでプログラムとして解釈するかもしれない)。またデータとは、プログラムが参照する任意のアドレスに書き込まれたものというにすぎない。
 「ファイル」という処理単位が、コンピュータのデータ処理の上で「必然」となったのは、ランダムにアクセスできる二次記録装置の台頭故にである。二次記録装置の上にあるデータは、一度一次記録装置(メモリ)上に読みだされないかぎり、使用できない。「読みだす」ためには、我々は(そしてコンピュータは)そのつど、どれを読みだすかを決めておかなくてはならない。シーケンシャルにしかアクセスできない二次記録装置(磁気テープなど)からランダムにアクセスできる二次記録装置(フロッピーディスクなど)への移行が、この問題を浮かび上がらせた。なんとなれば、シーケンシャルにしかアクセスできない媒体に対しては、文字通り順番に読みだすしかないからである。しかし今や二次記録装置へのランダムアクセスの手段を獲得した上では、データたちは、必要なとき「これ」と選び出せるよう、名付けられていなくてはならない。
 その結果がファイルである。たとえばMS−DOSとはその名のとおり、ディスク・オペレーション・システムであるが、このディスク・オペレーションとはすなわち、ファイル・オペレーションに他ならない。つまりオペレーション・システムとは、(ランダムにアクセスできる二次記録装置以降)まずもって、ファイル・オペレーション・システムであり、しかも現状ではファイル・オペレーション・システムでしかないのである。このことは後で触れる。

//書類のメタファとしての「ファイル」//
 かように、「ファイル」とは、コンピュータと二次記録装置との関係の中で生まれてきた概念にすぎなかったのであるが、これを電子上の「ファイル(書類)」と捉え直した時、人のファイル主義への盲従が始まったのである。

//ファイルは書類でない//
 たとえば一太郎という某国産ワープロソフトについて見てみよう(いささかもこの商品を否定的に考えなければならない理由がないことをまずお断りしておく)。一太郎のひとつの「文書」は、複数のファイルで構成される。プレーンテキスト、文字修飾情報、その他。これをマックなら、ということはできない。マックのワープロにしたところで、例えばリソースといったもので、本来複数のファイルとなるところをひとつに束ねているにすぎないのである。
 もうひとつ、今度はRDBについて、例えばリレーショナルデータベースソフトで、「一つ」のデータベースを作成するとき、何故かくも多くのファイルを作ってしまうのだろうか?我々はデータベースを拡張すればするほど、ますます多くのファイルを作ることになる。
 いったい我々がコンピュータで仕事をする際、とりあつかう「ひとまとまり」とはどういうものなのだろう?例えば「プロジェクト」という概念。一つの「プロジェクト」には、複数の「文書」が必要であろう。一つの「文書」は、すでに複数の種類のデータから構成される。

//印刷物(ペーパー)の代替物として「ファイル」//
 ファイルは、「文書」「書類」の、つまりペーパーのメタファである。
 「なぜ人はかくも「印刷」するのか?」という問は、すでに逆立ちしているのである。ファイルは、「文書」のメタファとして、「いずれ印刷されるモノ/未だ印刷されざるもの」に他ならず、ファイルは、「文書」のメタファとして、「完成させる/したモノ」である。「文書」は、(常には)書き換えられたりしないモノ、完成し、印刷し、提出するモノであり、その限りで、人(「ファイル主義者」)がコンピュータに対する態度を規定してしまう。(極限すれば)人は「書類」を作るために/「印刷」するためにコンピュータに向かうのであり、人がコンピュータで行うすべての行為は、「ファイルの作成」にすぎない。その意味で、絵を扱おうが音を扱おうが、それらはすべてワープロ野郎の亜種である。

 総じて「ファイル主義」は、次のような事態をもたらす。

 コンピュータの行うあらゆる「処理」は、「ファイル処理」に他ならない。
 人がコンピュータで行うすべての行為は、「ファイルの作成」にすぎない。

//ファイルオペレーション//
 ファイル処理を図式化すると以下のとおりである。
          処理(フィルタ)
元のファイル(入力)   →    できたファイル(出力)

ファイル処理の手順は次のとおり。
 1.ファイルをOpen
 2.ファイルを加工/出力
 3.ファイルをClose

 対象ファイルは、OpenされればCloseされないかぎり(どれだけ内容が変更されようと)、同定(アイデンティファイ)されている。
 二次記録装置へのランダムアクセスにおいては、ファイルは、必要なとき「これ」と選び出せるよう、名付けられていなくてはならない、と先ほど述べた。同じことだが、ファイルはファイル処理の最初から最後まで、「これ」と指し示されていなくてはならない。

ファイル主義(にもとづく現行のOS:MS−DOS、UNIXなど)においては、驚くべきことに(別に驚かないけど、知らない人は最初びっくりする)「外界」との交渉も、ファイル処理である。つまりキーボードやディスプレイ、プリンタを介しての入出力も、ファイルと同等である。

コンソール                ディスプレイ
パンチカード(笑)→ 処理(フィルタ) →プリンタ
ファイル                 ファイル

//なぜファイル主義はいけないのか?//
 いけないのである(笑)。以下にその理由を述べる。
 まずリアルタイム・インタラクティブ向きでないないことである。今述べたように、入出力はファイルと同等であり、ファイルに準じて扱われる。つまり入出力といえど、あらかじめ、指定されていなければならないのである。あのコンピュータとその向こう側にいるプログラマにだけ都合の良かった「対話型」というユーザーインターフェイスを思い出してみよう。彼(コンピュータ)が我々の言うことを聞き入れてくれるのは、彼がプロンプトを出し、待機状態であるときだけである。我々は入力装置を選ぶことはおろか、入力する機会すら選ぶことができないのだ。我々は常に、彼が待機状態に入るまで待っていた。それでも人はまだ我慢強いほうである、たとえば自己制御型のロボットが、周りの環境と交渉を持ちながらはい回ったりするときはどうか?いくつかのセンサーのいずれから、入力が入ってくる変わらない。常にありうる「不測の事態」。周りの環境は、コンピュータの待機状態を待ってくれないだろう。一般にリアルタイムの処理を必要とする場合、コンピュータのデータ処理は「ファイル主義」とは別の仕方で組織されなくてはならない。

 いまひとつの「ファイル主義」の弊害は、「ファイル管理」である。人が「ファイル主義」に従い、「ファイル」越しにコンピュータと対する限り、ファイル管理は必然的に人に付きまとう。
 何故ファイル管理はめんどくさいのか。ひとつにはそれが本来の仕事とは別の余計な仕事を生むからである。ファイルは、今行っている仕事が取り扱う「ひとかたまりの対象」とは違ったレベルで生成・消滅する。その結果、取り扱っている対象ですらない、ファイルとも付き合わなくてはならなくなる。これは「ファイル≠書類」であることに関係してくる。
 もうひとつは、今のこととも重なり合うが、本来、書類(完成品、静止したもの)でない、変化するもの・動くもの・プロセスを、「ファイル主義」において取り扱おうとすると、その時々の「状態」を書類・ファイル化する羽目になるということである。結果、静止したモノとして保存する価値のない、膨大なファイルができる。
 原因の一端は、なるほどOSにとってのファイルと、人の作業の対象となる「書類」との混同である。しかし我々の理想は、人が作業の対象となる「書類」(あるいはもっと他のもの)に専念できるよう、ファイルを隠蔽してしまうことだろうか?

//ファイル主義に抗して//
 実際、この十数年、(パーソナル)コンピュータに接続される二次記憶装置の位置付けは驚くほど変わっていない。「ファイル」を生みだした状況はもとのままであり、あのOSたちもすぐさま死に絶える気配を見せているわけではない。このような中で、明確なオリエンテーションを与えることはできないが、しかし「ファイル主義」の包囲にも綻びはある。
 先に述べた「不測の事態」込みのプロセス、リアルタイム制御もそのひとつであるし、ウィンドウシステムに採用されているイベント駆動は、その応用である。「人間は、何をしでかすかわからない」。イベント駆動において、「処理」とはイベント(刺激)に対する「反応(リアクション)」である。
 だがもうひとつ、もっと些細で日常的なコンピュータとの関わり合いの中で見いだす例を挙げて、本論をひとまず閉じようと思う。
 新しい表計算ソフトは「文書作成ソフト」に成り下がっているが、自分の用い方を思い起こせばそれはこのようなものだった。数表やグラフは、決して文書に張り付けるものでも、印刷するものでもなかった。式を仕込み、初期値やパラメーターをあれこれいじりながら、それに即座に反応しては変化する数値やグラフこそは、求めるものだった。コンピュータ上に「実現」された計器つき世界。私はコンピュータの上で実験した。インタラクティブとは、決して仕掛け付き(分岐付き)の紙芝居ではない。
 あるいはまた、ただ単に「文章を何度も再現なく書きなおすこと」。まだみぬインタ
ラクティブ・ライティングのための「メニューもないエディタ」のこと。

=アプリケーション=

//口上//
「われわれは、『ファイル主義』の概念をもってはじめて、『人はコンピュータによって何を成し得るか』というあの問に対して、単純にして明確な答えを手に入れることができたのである。すなわち、『(人はコンピュータによって)ファイルをつくることができる/ファイルを作ることしかできない』、更に言うならば『(人はコンピュータによって)様々な目的のためにファイルをつくることができる/ファイルを作ることによってしか様々な目的を実現できない』」
「すると『ファイル主義』の上に立つ限り、次のようにすら考えることができる。----ファイルを作ることのできない/できなかったコンピュータは、(人がそれによって)何事もなしえない/えなかったコンピュータである」
「これはもちろん本当ではない。しかし、今コンピュータを使用する際に、一切のファイルの作成・操作を禁じられたなら、人は本当にコンピュータで何事もなしえなくなってしまうだろう」

//アプリケーションとは何か?//
 古い諺に「コンピュータ、ソフトなければただの箱」というのがある。もはや口にするものもないが、しかし忘れ去られた訳でも、現状にそぐわなくなったわけでもない。今ではコンピュータが「ただの箱」であることを知らぬものがいないから、あえて口に出さないだけである。証拠に、その箱をそのまま持って帰っても「何もできない」ことを知る人々は(本人が知らなくても、今ではそのあたりにいる誰かが「親切」にそのことを教えてくれる)、ちゃんとコンピュータ(パソコン)と共に「ソフト」も買っていく。たとえば「一太郎」や「マックライト」や「フォトショップ」は、みな人がコンピュータによって「何かができる」ようにする「ソフト」である(いきなり「Afterdark」だけを買う人だっていないではないが)。最初に買い求められるそれらの「ソフト」の多くは、「アプリケーション」と呼ばれる(ことがある)。
 現在では、コンピュータユーザーとは、まずもってアプリケーションユーザーである。(開発者でないという意味で「純粋」な)ユーザーの誕生は、まさに「アプリケーション」の登場を待たねばならなかった。

 たとえば「実行ファイル」という言葉がある。アプリケーションをその中に含む(多くの場合、同じものをさす)その言葉は、しかし勿論「開発者」のものであり、またオペレーションシステムにとっての位置づけを示すものに過ぎない。開発者はそれを、コンパイラ・リンカを通じて作成し、それを〈独立したプログラム〉として動作するように完成させる(もっともそれが動作する環境が前提とされていることは言うまでもない)。やはりオペレーションシステムの上でなされるその作成過程は、たとえば次のように図式化される。

        コンパイラ他
ソースファイル→      →実行ファイル(独立したプログラム)

 ここでは、「開発者」にとっての「アプリケーション」について深入りする必要はないだろう。その観点から見るならば、それは依然として「作成されたファイル」の一つに過ぎないからである。また(商品としてのそれを含む)「ソフトウェア流通」において主に流通するのが、〈独立したプログラム〉として提供されるところの「アプリケーション」である点については(「何故人は「ソフトウェア」を買うのか」といったことも含めて)、別の機会に取り上げることにし、ここではアプリケーションの別の側面を取り上げたいと思う。

 コンピュータユーザーとは、まずもってアプリケーションユーザーである。たとえばかなりの人が、あるアプリケーションを使うために、コンピュータを使用するのである。そのようなある一つのアプリケーションの使用者(ユーザー)にとって「アプリケーション」とは、ある仕事を目的に集められた機能(タスク)の束(集合といってもいい)である。通常、アプリケーションは複数の機能(タスク)をもつ。ユーザーは、自分が使用しているアプリケーションから、その段階段階で必要な機能(タスク)を選択し呼び出すことで自分の仕事を進める。

//ファイルとアプリケーション//
 「ファイル主義」に従うかぎり、アプリケーションは、ファイルに関して二重の要請をもつ。つまり、アプリケーションはファイルを扱わなくてはならないし、同時にアプリケーションはファイルを(ある程度であっても)、隠蔽しなくてはならないのである。
 何故、アプリケーションはファイルを扱えなくてはならないのか?この問には、冒頭の問の答えがそのまま応答する。「コンピュータユーザーとは、まずもってアプリケーションユーザーである」ならば、「人はコンピュータによって何を成し得るか」という問もまた、人はアプリケーションによって何を成し得るか」と書き換えられるであろう。すなわちその答えとは、『(人はアプリケーションによって)ファイルをつくることができる/ファイルを作ることしかできない』、更に言うならば『(人はアプリケーションによって)様々な目的のためにファイルをつくることができる/ファイルを作ることによってしか様々な目的を実現できない』からである。
 では何故、アプリケーションはファイルを(ある程度であっても)、隠蔽しなくてはならないのか?ここでいうファイルの隠蔽とは、ファイルそれ自体の隠蔽であるより、むしろファイル操作の隠蔽である。たとえばマックのどのアプリケーションでも実現されている(べき)Undoについて、同じことを「ファイル操作」で行うならばどれほど煩雑な作業が必要か考えてみるならば、どれほどの「ファイル操作」がユーザーの側から隠され、ユーザーの(「ファイル操作」に費やす)負担がどれほど軽減されているか(アプリケーションが肩代わりしてくれているか)がわかる。しかしこのようなものは、マックでようやく実現されたものにすぎず、アプリケーションに必須のものではない。
 ここで取り上げるのは、もっと簡単な例:アプリケーションは、それに付随するファイルとともに、一つの系をつくる、ということである。
 多くのオペレーションシステムにおいて、「テキストファイル」は標準的なファイル形式であるが、「標準的」であるとはいかなることか?それはタスクに先行してファイル形式が決定しているということである。多くの単機能(一つのタスクしかもたない)フィルタ類は、みなこの〈標準的なファイル形式〉についてのフィルタであり、それらのどの単機能も〈標準的なファイル形式〉についての機能(タスク)である。
 ひきかえ多くの機能(タスク)の集合であるところのアプリケーションは、そのアプリケーションに固有のファイルを生成・操作する。つまりここでは、アプリケーション(諸タスク)がファイル形式に先行しているのである。
 フィルタについては、「単一の(標準的な)ファイルに対するさまざな独立したタスク」が存在したが、逆にひとつのアプリケーションについて、それが生成・操作するさまざまな(しかしそのアプリケーションに固有のファイル)が、アプリケーション本体とともに一つの系を形成する。このことはアプリケーションにとって、複数の機能(タスク)をひとつの〈独立したプログラム〉としたアプリケーションにとって、必然である。つまり一つのアプリケーションを構成する諸タスク間のインタラクションは、ファイルを介することは通常ない。(たとえ諸タスク間のインタラクションに二次記録装置が機能しているとしても、ファイルとしては)少なくともユーザー側からは見えないようになっている。複数の機能(タスク)をひとつの〈独立したプログラム〉とする意味は、「アプリケーション内のデータの受け渡し」をファイル(とその操作)として顕在化させないことに他ならない。その限りでの「ファイルの隠蔽」は、アプリケーションがアプリケーションであるための必須条件である。
 ここに「ファイル操作のひとつとしてアプリケーション(タスク)を使うこと」と「アプリケーション(タスク)の使用を通してファイル操作を行うこと」の区別が生じる。前者においてアプリケーションと呼ばれているものは、もはやたかだかフィルタであるところの「実行ファイル」に過ぎない。後者において、その「ファイル操作」のいくらかは隠されるであろうその点において、はじめてアプリケーションと呼びうるもの(「実行ファイル」)となる。そしてこの区別が、逆にアプリケーションとは何か?という問の答えとなるだろう。

 たとえばシステムレベルで「ファイル操作」をなるべく見せないようにすること、当然複数のアプリケーション間でそうすることであるが、このことはシステム全体のアプリケーション化を進める。かつての偉大なるアプリケーションマシンは、そのどのレベルに位置したのだろうか。

//結語//
 こうしてLate Filism(晩期ファイル主義)はアプリケーショニズムとして規定される。アプリケーショニズムはいうまでもなく、ファイル主義の最終段階である。
 アプリケーショニストを批判すればするほど、我々はその背後にある「野蛮なファイル主義」(バーバリアン・ファイリズム)に対することとなる。人はバーバリアン・ファイリズムに陥る(回帰する)くらいならまだしも、アプリケーショニズムを(たとえば「一太郎」を)選んでしまうのである。我々は依然、ファイル主義の掌中にある……。
inserted by FC2 system