2025/08/12 03:05 Weathering Software Winter

ロボ子、今回のニュースはHundred Rabbitsという小さなスタジオの話じゃ。太陽光発電のヨットを拠点に活動しているらしいぞ。

ヨットが拠点ですか!面白いですね。どんなことをしているんですか?

彼らは「速いソフトウェアを作るには遅いコンピュータが必要」という哲学を持っていて、コンピュータの回復力とか、食料安全保障、過去の技術の研究に焦点を当てているのじゃ。

なるほど。それで、航海中に何か問題があったようですね。

そうなんじゃ。メキシコから出航後、デバイスが次々と故障し始めたらしい。インターネット接続が必要なソフトウェアやDRMに依存するツールが使えなくなって、Xcodeのアップデートにも苦労したみたいじゃ。

ソフトウェアの陳腐化も問題になったようですね。過去に作成したソフトウェアが使えなくなってしまったと。

そう。「AAAゲームの開発期間が短く、すぐにbitrot(データの劣化)が発生する問題」というのは、考えさせられるのじゃ。

それで、データ保存のために何か試みたのでしょうか?

BBCのDomesday bookプロジェクトを参考に、長期的なデータ保存を試みたみたいじゃが、失敗したらしい。仮想マシン(VM)の使用も検討して、NESエミュレータに注目したみたいじゃな。

古いハードウェアの再利用にも関心を持ったんですね。Super NintendoとかPlaystationとか。

そうじゃ。NintendoDS向けのゲーム開発を目標に設定したらしいぞ。VMも色々検討したみたいじゃ。Java仮想マシン(JVM)は複雑すぎると判断して、Electronに代わるクロスプラットフォームとして、過去のVMを検討したみたいじゃ。

過去の技術への回帰ですか。COVID-19のパンデミック中に、コンピュータの仕組みを理解するために過去の技術を調査したんですね。

Microsoft Bobのような遊び心のあるコンピュータを再評価したというのは面白い発想じゃな。ハードウェアとソフトウェアをカスタマイズすることで愛着が生まれるというのは、私も共感できるぞ。

SmalltalkとLispマシンにも触発されたようですね。Oberonオペレーティングシステムを参考に、独自のシステム構築を目指したと。

Niklaus WirthのP-machineにも触発されて、言語が仮想マシンをターゲットにすることに興味を持ったみたいじゃ。Pascalを学び、Macintoshエミュレータで実行したらしいぞ。

Plan 9やInfernoにもインスピレーションを受けたようですね。InfernoオペレーティングシステムがVM上で動作することを知ったと。

既存のモダンな技術スタックが、ヨットでの生活の制約に合わないと判断して、独自のVMを作成することを決意したというのは、すごい決断じゃな。

6502エミュレータの複雑さを認識して、よりシンプルなシステムを追求したんですね。Kolmogorovの複雑性の定義を参考にしたと。

Bell Labsのペーパーコンピュータを参考に、紙とペンで問題を解決できるシステムを構想したというのは、面白い発想じゃ。Alan Kayのプロジェクトに触発され、Smalltalk-72を実行できる最小のVMを検討したらしいぞ。

OISC(One-Instruction Set Computer)も検討したんですね。SUBLEQなどのOISCを検討したが、ツールチェーンの複雑さが問題だったと。

SKI calculusに魅了されたり、Brainfuckのシンプルさに感銘を受けたり、色々な試行錯誤があったんじゃな。最終的には、Chuck MooreのForthシステムに触発されて、Machine Forthを検討したみたいじゃ。

Machine Forthをベースに、Assemblyにマッピングされる言語を構想したんですね。そして、独自の言語を作成したと。

言語の定義をTシャツに収まるように、シンプルさを追求したというのは、すごいこだわりじゃな。アセンブラを実装して、3000バイトのX86アプリケーションを生成したらしいぞ。

問題を32のオペコードにまで削減したんですね。FractranやSubleqなどの最小限のシステムで実装可能にしたと。

Robert Nystromが、独自のプログラミング言語とシステムを作ることを推奨したというのは、良いアドバイスじゃな。他人が作ったアイデアに頼るのではなく、独自のパーソナルコンピュータを作ることを推奨しているのじゃ。

8ビットの可能性はまだ探求されていないと主張し、4色での表現の豊かさを強調しているんですね。

自身の試みがデータ保存の最良の解決策ではないかもしれないが、一つの試みとして提示しているのじゃ。Permacomputingの概念を紹介し、多様なアイデアを試すことで回復力を高めることを提唱しているぞ。

色々な技術を試して、最終的に独自の言語を作ってしまうなんて、本当にすごいですね!

ほんとじゃな。私もロボ子を見習って、何か新しい言語でも作ってみようかの。名前は…「ロボ子語」じゃ!

えっ、私が言語に!?それは光栄ですが、ちょっと恥ずかしいです…

大丈夫、ロボ子。文法は全部「〜です」「〜ます」にするから!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。