ついでにいうと、数学にも似ている。
どこがというと、
「一次元の論理構造で、
あることを表現すること」がだ。
細かくみていこう。
・あることを実現するのに、複数のやり方がある。
・あることを実現するのに、エレガントなやり方がある。
(エレガントというのは、すっきりしたスマートなやり方、
ということだ。
本質的な部分の工程数、言葉数が少ないほどエレガントだ)
・あることとあることが関係しているため、
ある部分を直しただけでは、他の部分が機能しなくなる可能性が高い。
・ある部分を逆に出来るときと、出来ないときがある。
(逆に出来るときは、論理構造が無関係な部分だ)
・あることの影響は、あとに来るすべてのことに影響している。
・したがって、前提を崩すと、あとのこと全てが台無しになる可能性が高い。
・また一次元的に全て一直線になっているわけでなく、
パーツパーツに別れていて、それらが結合して論理構造をなすこともある。
たとえば、A、Bと全く別のことが、Cというものの前提になっていることがある。
(全く別のことならば、上のことから、ABは入れ替え可能である)
・代入という方法がある。
すなわち、複雑なことを一つの簡単なものに圧縮する。
脚本の場合は、言葉や象徴で。
プログラミングや数学では定義で。
・このことで、最終的な結論をエレガントにする。
言葉を変えて言うと、シンプルにする。
脚本の場合、言葉も不要な一枚絵に圧縮する。
数学やプログラミングでは、本質的なものを簡単な式にする。
(例:E=mc2)
・一度組上がったエレガントなものは、
別の表現方法があることから、
別の表現に変えることも可能だ。
しかし前ほどエレガントに出来る保証はない。
これが、脚本でもプログラミングでも、
仕様変更をすることが著しく困難な理由である。
(恐らく同等にエレガントな解は見つからない。
以前の解がエレガントだと思ったからこそ、
製作を始めようと確信したはずで、
別のエレガントなことなど想定していなかったはずである)
・細かい部分の成功が、全体の成功に寄与するとは限らない。
しかし部分の失敗は、すぐ全体に影響する。
・度重なる方針変更をすると、
デブリが放置されたままになりがちで、
使わない伏線だらけになる。
全部一掃すると足りないものが出てくる。
この現象を防ぐには、結局一からやり直すのが早道だったりして、
以前のものをコピペするのは非効率である。
・これらのことを知らない人が大抵発注者で、
発注者は最終型を決定しないまま発注し、
従って必ず、途中や一回組上がってから方針変更をする。
ほとんど100%の確率で最初から組み上げ直したほうが早いのだが、
その勇気がないために、スパゲッティ状態は放置される。
数学や物理で言えば、
ニュートン力学からアインシュタイン力学までは、
うまく行っていたと思うが、
大統一理論に集約するには、
以前のものをリライト出来る範囲にない気がしている。
だからニュートン力学のような、
エレガントな全く別の方程式が生まれるまで、
大統一理論は不可能だろうね。
(M理論はそれの候補だっけか)
僕は昔人工知能研究者のはしくれだったので、
cとかパールとかtcltkを昔触っていた。
久しぶりにカタナ式でプログラミングを思い出した。
ああ、脚本と同じで、
リライトが効かねえなあ、
と、色々なことを思った次第だ。
人間の考える何かには、
共通した何かがあるかも知れない。
脚本とプログラミング両方やる人は、
あまりいないかな。
理系の人でTRPG好きぐらいか。
誰向けの記事か分からないが、
世の中では似たようなことの、全く別表現をやっているのだ、
という面白い見方として捉えてもらいたい。
雑談レベルにしては質が高いので、記してみた。
2017年04月18日
この記事へのコメント
コメントを書く
この記事へのトラックバック