最近、『Code Reading オープンソースから学ぶソフトウェア開発技法』という本を買った。ソフトウェア開発をする仕事をしているわけでもなく、本書で紹介されているJavaやC++のプログラマーでもないので、あんまり自分と関係のない本だったのだけれど、立ち読みしたときに序論が気になったので買うことにした。
本書の主旨は、「オープンソースソフトウェアには優れたコードがたくさん含まれており、それを読むことはよりよいプログラマーになるための必須条件だ」というものである。で、以下に気になる序論を紹介する。
文芸作品としてのソフトウェアが存在し得ないのは、この世界で所有権が絶対的な力を振るってきたからです。これは言わばメルビル(Herman Merville)社の社員だけが『白鯨』を読むことを許され、ヘミングウェイ(Ernest Hemingway)社の社員だけが『陽はまた昇る』を読むことを許されるようなものです。こんな環境で豊かな文学が育つと思いますか? このような状況下で文学部など存在するはずもありませんし、ましてや文章作法などが生まれるはずがありません。こうした背景をそのまま認めた上で人々にプログラミングを学んで欲しいと思うのは欲張りというものです。Diomidis Spinellis著・(株)トップスタジオ訳『Code Reading オープンソースから学ぶソフトウェア開発技法』、P.3、(株)毎日コミュニケーションズ、2004年
まったくもってその通り、と言いたくなるような内容である。文学では時としてオリジナリティが喧伝されることはあっても、基本的には「模倣によってよりよいものを産みだしていく」というのが共通認識だろう。二葉亭四迷が最初に着手したのはロシア文学の翻訳だし、ありきたりな言葉でいえば、言葉とはそもそも借り物だからだ。
ただ、この本に興味を持ったのは、引用した序論に深く共感したからではなく、コードが文芸作品になぞらえることができるのなら、文芸作品もまたコードになぞらえて捉えることができるのではないかと思ったからだ。
オブジェクトとしてのテクスト
さて、プログラミングの世界には、オブジェクト指向という考え方がある。僕も完全に理解しているわけではないのだけれど、これはあるプログラムの塊を一つのオブジェクト(砕けた訳をすれば「モノ」だろうか)として考える手法である。
これだけだと意味がわからないのだけれど、噛み砕いて言うと、大規模なソフトウェアを開発するにあたって、一連の処理を「部品」として再利用したり拡張したりする必要性があったために新しく作られた概念である。それまでのプログラムというのは、すべてが一連の手続きとしてなりたっており、その一部を抜き出しても他のプログラムで動かないということが多かったそうである。
ところで、文芸作品はテクストから成り立っている。本は線的に進んで行くものであるというのは一般的な概念だ。ロラン・バルトなど、一部の作家は断章形式でテキストを書いたりしているが、ごく一般的な小説というと、あくまで線的なものとして考えられているのではないだろうか。
では本当にそうかというと、あたかもオブジェクトのように使われている一節というものがある。それは引用という形で現れる。ちょっと手元にないので出典を明らかにできないのが甚だ不正確で申し訳ないのだけれど、泉鏡花の『歌行灯』にこんな一節がある。
おい、可愛い人だな。殺されても死んでも、人の玩弄物(おもちゃ)になるな
これは太宰治によって「死んでも人の玩弄物(おもちゃ)になるな」と引用され、さらに綿矢りさによって孫引きされたことで話題を呼んだ一節である。
引用には間テクスト性(参考:Wikipedia)などとジュリア・クリステヴァが言ったりするように、特別な力があるとは思う。でもそれは現実に行われている引用の実際を表してはいない。論文や哲学書などと異なり、小説の中の引用は単なる決め台詞として扱われていることが多いのではないだろうか。
こうした「決め台詞としての引用」に対し、僕は非常に懐疑的な見方をしているのだけれど、それはそれとしておいといて、「コードとしての文芸作品」というこの記事の題に則して考えると興味深い。
そもそもオブジェクト指向というのは、ある一塊のプログラムをブラックボックスにする。入力するべき引数があって、それに対して結果は返ってくるけれど、どういう仕組みで返ってくるのかは詳らかにしないという考えである。そう考えると、「決め台詞としての引用」というのは、まさにテクストをオブジェクトとして扱っているといえるのではないだろうか。そのテクストが孕んでいるものよりは、そのテクストの効果を主眼にする。
もっとも、こうしたことは昔から行われていたわけで、オブジェクト指向などという概念があるより先にあった。そんなことを世紀の大発見のように喚きたてる意図もない。
それよりも興味があるのは、プログラムによってテクストが生成できる現実が近づきつつあるのではないか、ということだ。変数やデータ型、メタデータなどの概念を援用すれば、文芸作品の聖性が明らかになるような気がする。それが小説家たらんとする僕にとってほんとうに幸せなことかはわからないけれども。
ちょっと色々はしょり過ぎた感があるけれども、もうちょっとプログラミングを勉強してから、なにか文芸活動にいかせるよう頑張ろう。
Code Reading―オープンソースから学ぶソフトウェア開発技法
価格¥1,158
順位239,790位
著トップスタジオ, まつもと ゆきひろ, 平林 俊一, ほか
発行毎日コミュニケーションズ
発売日2004 年 6 月 1 日