toddler’s diary

以前は研究にあまり関係ない雑談・2023年4月から本を通じた自分の振り返りやってます

鈴木則久(編)「オブジェクト指向 解説とWOOC'85からの論文」共立出版 1985

まだ Basic や C 言語を覚えたての大学生だったころ、オブジェクト指向という名前を聞いてとりあえず本屋で見かけて買ってみたという本です。まあ言語というのは解説書だけ読んだだけではよくわからないもので、実際に処理系を触りながら実感していかないと、オブジェクト指向とは何かということはよくわかりませんでした。

 

その後 C++ を少し触りましたが、Javaアプレットで EM アルゴリズムで混合分布の推定をするデモを作るときに割とちゃんとオブジェクト指向に向き合いました。C とかでも構造体を作ってクラスに相当するようなことはやっていたと思うので、そんなにパラダイムシフトをしたという感覚はありませんでした。

 

同じく S でも博士論文のネタにもなった混合分布の推定法も S3 という中途半端なオブジェクト指向ではありますがやりました。現在でもオブジェクト指向的なプログラムを作ることもありますが、機械学習とかでは自分でパッケージを作るというおおげさなことをやらない限りは、ユーザ側でクラスインスタンスを作ったりメソッドを呼び出したりという感じです。

 

オブジェクト指向を最初に勉強して気持ち悪いのは、例えば a+bを、aというオブジェクトに+というメソッドがあってbという別のオブジェクトが作用するという説明で、言語によって違いますが、a.plus(b) のような書き方をするのが気持ち悪い感じがしました。また、場合によっては plus(a, b) という書き方をすることもあり統一性もないですし、そもそも数式をベースにプログラムを作るときは a+b のように書く方が自然です。

 

というわけで、実際にはオブジェクト指向のいいところだけ使って適当にプログラミングをやっているわけですが、オブジェクト指向版のプログラム書法のような本を読んだわけではないので、自分のやっている流儀が適切なものなのかどうかは全く自信はありません。