[Mew-dist 07607] Re: user meeting?
Shigeya Suzuki
shigeya at example.com
1999年 2月 22日 (月) 22:24:34 JST
>>>>> "onoe" == Atsushi Onoe <onoe at example.com> writes:
>> > 個人的には勉強を兼ねて C++ で書きたいです。
>> http://www.daemon.org/c++-hoax.html
>> を読んでないな :-)
今、読み直してますが;-p
onoe> 問題を認識するのも勉強のうち:-)
どうもこの話題になると書きたくなる。メーリングリストの主旨からはずれま
すから、^L。。あれ、mewじゃきかなかったっけか。。
生産性をあげる道具としては C よりマシだと思いますけれどね。特に
generic programming を念頭において使うと、かなり強力。そのあたりがクロー
ズアップされてきたのは最近だとは思いますが。
システムプログラマは一番関係ないところに居るとは思うけれど、コンテナの
格納の仕方とかで悩む必要とか減らせるから、本質的なところに集中できるの
は明らかなメリットです。ポインタでリンクリスト作るなんて労力の無駄しな
くて済みますからね。自分で毎回 linked list のインターフェース作って、
一度もバグつくらないだけの過去と今後への自信があるなら話は別ですけど、
そうでない人には役にたつ。私には向いてます(笑)
どっちかというと、今や O-O なプログラミングツールというか、generic
programming のツールとして使っているのに近い感じ。なんというか、O-O か
どうかは、はっきり言って関係ないです。単に Expressive なプログラミング
言語だと思って使うのが正しい。(perlほどではないが)
最近は、書き貯めた分があるので、perl に近い感覚でプログラムを書けるよ
うになってきたから、かなり便利ではあります。
対象によりますけれど、たしかに書き方がヘタクソだと、実行ファイルがでか
くなるのは事実で、-g オプションつけてると泣きたくなることもあります。
しかし、インターネットで普通に流通しているようなフリーウェア程度の大き
さ(たかだか数万ステップ前後)のプログラムを構築するのには、困らないと
思いますけれどね。
近い例をあげると、今書いている、あるプログラムは、 wc *.cc *.h すると、
37867 94672 971696 total
程度なんですけれど、リンクすると(↑と別にライブラリもあるけれど)、
13% size build/test-daemon
3109891 + 893540 + 83072 = 4086503
14% ls -l build/test-daemon
-rwxr-x--x 1 shigeya 30699613 Feb 22 22:05 build/td
とかなります。strip して 4M ぐらいの大きさ(on Solaris)
なので、デマかどうかしらんですが、1本ぐらいかいてもバチはあたらないか
ら、是非使ってみて欲しいです。試しに使ってみるのには、IM みたいなプロ
グラムは適当だし、STL 使うのにも適当な気がする。
shigeya
PS. ↑を最初よんだときは、本人かもしれないと思いましたが、
良く読むと、ほんとに本人かどうか(あるいは、本人が冗談でいっている
のではないか、とか)怪しいと思ったりします。とくにあげている例がす
ごく怪しい(笑)
HP のワークステーションで load に 5分とか、DOS 自身を 70M というの
は超大げさ。DOS 程度のプログラムだったら、どうやったってそこまでで
かくならないと思います。PC 自体のエミュレーションいれたって、そこ
まで大きくなるかな? ↑の比率で単純計算したって、load module の大
きさが 70M ってのは、↑の 20倍もあります。
また、だいたい、demand page のシステムだから、ロードには時間かから
ないと思う。プログラムの初期化に5分なら、まだ分かりますが -- グロー
バルなオブジェクトにかなりまかせているならあり得ますが、どうかんが
えてもそんなプログラムは普通は組まないでしょう。
operator overloading は、本当に注意深くやらないととてつもなくひど
い目にあうのは事実ではあります。たしかに、書いてあることのいくつか
は C++ の明らかな問題点。でも、他に何使ってやるわけ?という気もす
る。
Mew-dist メーリングリストの案内