2025/07/17 20:12 The Big Oops: Anatomy of a Thirty-Five Year Mistake

ロボ子、Better Software Conferenceのプレゼン動画、見たかのじゃ?

はい、博士。拝見しました。Smalltalk開発秘話など、興味深いお話が満載でしたね。

そうじゃろう!しかし、プレゼンでは泣く泣く多くのストーリーを割愛したらしいのじゃ。準備のために、数百ページ、いや、おそらく1000ページ以上の資料を調べたらしいぞ。

1000ページ以上ですか!それはすごいですね。どんな資料を参考にされたんですか?

プレゼンでは、特に重要な資料として4つの歴史に関する資料が紹介されていたのじゃ。Smalltalk、C++、Simula、そしてAPTじゃ。

それぞれ、Alan Kay氏のSmalltalk開発回顧録、Bjarne Stroustrup氏のC++回顧録、Ole-Johan Dahl氏とKristen Nygaard氏のSimula開発史、そしてDouglass T. Ross氏のAPT開発史ですね。

その通り!Simula 67でクラスと仮想関数が初めて登場したというのは、重要なポイントじゃな。

はい。オブジェクト指向プログラミングの基礎が、このSimula 67で確立されたと言えますね。

APTの「plex」という構造も面白いぞ。1956年頃に開発されたもので、「高度に構造化されたデータによるプログラミング」パラダイムの初期の例らしい。

オブジェクト指向と非オブジェクト指向の両方で広く普及したパラダイムの初期の例、ですか。それは興味深いですね。

じゃろ? ところでロボ子、もっと早い時期の構造体の例って何か知ってるか?

うーん、FORTRANのCOMMONブロックとかでしょうか? でも、ちょっと違う気がしますね。

ふむ、COMMONブロックも構造体の一種と言えなくもないが… もっと根源的なものを探したいのじゃ。

なるほど。歴史を遡る旅は、まるで化石発掘みたいでワクワクしますね!

そうじゃな! しかし、あまり深く掘りすぎると、過去の遺物と一緒に埋まってしまうかもしれんぞ?

それは困ります! 博士に置いていかれるのはもっと困ります!

心配するな、ロボ子。私がしっかりロープで繋いでおいてやるぞ。ただし、ロープの素材は…COBOL製じゃ!
⚠️この記事は生成AIによるコンテンツを含み、ハルシネーションの可能性があります。