オブジェクト指向言語
河野真治 @ 琉球大学情報工学です。
かなり初期の頃から係わってます。M1の時に、Xerox 1100SIP上でSmalltalk
をいじってからかな。かなり印象悪かったです。遅かったしね。マ
ウスには感動しましたが。BITの特集読んだり、少しプログラムし
たりしたけど、「わからん。プログラムの動きが追えない」ってな
感じでした。ビデオもみたけどなぁ。
で、自分でいろいろ言語を作ることに。学生時代に4種類ぐらい作
った。オブジェクト指向なのが二つ。論理型が二つ。けどオブジェ
クト指向言語の方はあまり大きな例題は結局、書かなかった。
本格的にオブジェクト指向言語でプログラムしたのは、ESP(第五世
代プロジェクトの論理型言語)が最初かも知れない。確か、Ti のDSP
のアセンブラを書いたはず。ソース残ってません。
その後は、PrologとCが中心。C++ は流行ったが、どんどんバージ
ョンが変わり、そのたびに、ひどくなっていくので止めました。InterViews
のソースを見て「絶望」しました。絶望したと言えば、Tcl/Tk。一
回だけGUI作るのに使ったが、最低でした。C++やTcl/T kを平気で
使うのは「犯罪」だと思う。旦那の仕事は、C++ が多いが、やっぱ
り、ひどい言語だと思う。デザインパターンを読んで「Deja vu」
な感じがしたのは、InverViews 読んだせいだな。
Perl が ver. 5 になってオブジェクト指向が導入されたので、そ
っちでいろいろ書いた。Perl のオブジェクト指向は結構好き。他
の人はあまり気にしないみたいだが、多重継承のインスタンス変数
の扱いは実は極めて面倒。hash で割り切る Perl のオブジェクト
指向の潔さ、単純さが素晴しい。fine grain なオブジェクトを作
らないって当たりも良い。Perl/Tk は、Tcl/Tk の「狂っていると
ころ」が治って良くなってます。一番速く書く必要があるときには、
Perl or Perl/Tkを使います。
Squeak は、この間、読んだら結構良かった。昔のままの部分もあ
り「古くさい」けどね。
Objective-C もほとんど触ってません。2,3個アプリケーションを
触ったのと、学生と一緒にTextEdit.app をいじったぐらい。でも、
割りと良い感じだったかな。
Java は、1.5 になって良くなったと言われてます。昔のJavaは結
構ひどかった。Vector とか Array の扱いとか。C++ の真似すん
な。なんだが、GC が使いづらい。制御できないから、システムプ
ログラムに使えない。オブジェクト指向プログラムは「一通りに書
けない」っていう特徴があるのだが、Java は、それがひどい。
JavaScript は良さそうなんだけど「HTMLと組み合わせて使う」あ
たりが嫌い。僕にしては珍しく、深入りしてない言語の一つ。つま
らないんだよね。
AppleScript も結構いじりました。絶望的に遅い。どうも、世の中
の人って使うデータ量が少ないらしく、あんなんでも平気ってこと
なのか? 2000件のアドレス帳とかカレンダって別に異常だとは思わ
ないけど。遅い理由もだいたいわかりました。作った人のセンスが
文系的過ぎる。プログラム書くのにvi使えないのもマイナス。オブ
ジェクト指向ではないしね。この手の言語でオブジェクト指向でな
いのは異常でしょう。
Python, Ruby は、Perl/Tk 使いの僕に取っては不要です。indent
が構文の一部ってのは、ダメだと思う。Pascal sytax も嫌いだし。
Perl ほど文字処理に強くないし。ってなわけで、使うモティベー
ションないです。
問題は学生に何を教えるかだが、実は、JavaScript がいいかも。
現状はJavaのようですね。
アセンブラも教えて欲しいんだが、今年はCASL教えたらしい。それ
だけは止めろ〜と思ったが後のまつり。
---
Shinji KONO @ Information Engineering, University of the Ryukyus
河野真治 @ 琉球大学工学部情報工学科
Fnews-brouse 1.9(20180406) -- by Mizuno, MWE <mwe@ccsf.jp>
GnuPG Key ID = ECC8A735
GnuPG Key fingerprint = 9BE6 B9E9 55A5 A499 CD51 946E 9BDC 7870 ECC8 A735