考えるといっても、最近の、「もしかしたら、自分が生きているうちに完全サイボーグ化がギリギリ実現するかも?」みたいな瀬戸際だと考えることも変に現実感がでてしまって、

「老後の蓄えとやらを丸々突っ込めばまかなえる値段なのか」
「年金払うよりそっちに賭けたほうがいいのか」
「老後の蓄えを全部突っ込んで、無一文ホームレスの不老不死サイボーグに生まれ変わったとしてそれからどうしたらいいのか」
「ああ、身体は健康なのだから一生働けばいいのか。…一生?」

のあたりでつらくなって考えるのをやめてしまいがちだ。


話は飛ぶけど、仕事柄、ときどきデーモンというかバックグラウンドジョブというか、「裏で常に動き続ける」プログラムを作ることがある。
で、そういうプロセスは何ヶ月とか何年のスパンで無メンテで動き続けるのが必須なんだけど、たいていの場合、「ある程度動いたら一旦死んで(終了して)、別のプロセスを心機一転立ち上げ直す」という仕組みが組み込まれる。

なんでそんな仕組みが必要なのかというと、一つには、長いこと実行していると、ごくたまに「なぜか」ハングしてしまうことがあるとか、解放し忘れた領域が「なぜか」すこしずつ溜まってしまうとかで、プロセスの実行時間と不安定さが比例してしまうからというのがある。
きちんと作れば、理論的には、そんなことは起こらないはずとは言える。でも、個々の実装に多少の問題があっても全体としては動き続けるロバストな仕組みを作るのが大事という見方も一方である。

また、設定ファイルやプログラム本体を途中で更新することを考えると、無限に動作し続ける前提より、「たまにすべてご破算にして一からやり直す」前提で設計した方が何かとシンプルで都合が良いという理由もある。

まあ、調子悪くなったときとかアップデートが走ったときにPCを再起動するのと同じことだよね。


この機能を作る時に、いつも不死について考えるのだ。自分が子プロセスを定期的に殺してる限り、神が動物を不死にしなかったことに文句は言えないんだよな、と。

歯とか手足などの大きなパーツは再生しないとか、細胞分裂の時のコピーの失敗がすこしずつ蓄積してしまうとかで、年齢が高くなるほど確率的に不安定さが増すのは必然だ。維持コストが、新しい個体を作るコストを下回っているうちは、既存の個体をメンテした方が効率がいいけど、それは永遠ではない。

身体の維持コストはともかく、記憶とか知識の蓄積を世代交代によって丸々失ってしまうのは損失なのでは?という話もあるが、それも最近よくわからなくなってきた。

例えば、「黒人と白人が同じテーブルで食事するなんてありえないですよ?昔から。」と言う200歳くらいのおじさんおばさん達がいつまでも第一線で活躍する社会が果たしてうまく成り立つものなのか。
300万歳くらいの人が出てきて、「いや、昔は全員けっこう黒かったですよ」とか言い出せば丸く収まるのか。それとも埋めることのできない深いジェネレーションギャップが無限に増えて行くだけなのか。

将来、サイボーグ対生身の人間の戦争が起きるとすると、それは機械に仕事を奪われたとか、富裕層対貧困層の争いとかではなく、世代間闘争なのではと思った。