remove_if記事の顛末と、関連思考

自分のエントリに修正をしていただいたid:cxxさんのエントリについて、id:uskzさんによる修正エントリがアップされました。

正直、自分の理解は超えているというか、きちんと理解して使っているわけではないので、難しい話です。
すいませんが、今は仕事の佳境につき、アップされたエントリを理解しきれませんので、後日、STLを勉強してからもう一度参照させていただきたいと思います。

読みにくさ

実は、STLの話の難しさというよりも読みにくさが気になりました。(見ている環境の問題なので、書いた本人には関係ない話です)
英単語が多いかということは全く気にならないのですが、PCのフォントというか、webブラウザの陳腐な表示というか、フォント設定というかそういうのが組み合わさって、画面上では非常に読みにくくなってしまっています。
あー、knuth先生が見たら嘆くだろう、と思う。*1

読みにくい一番大きな要因は、文字間。英単語と日本語の間のスペースとか、単語のつなぎとか、両端ぞろえになっている日本語の文字間とか。
フォントデザインも、汚いのだが、それはあきらめている。でも、もしくはOSXで見たらきれいかもしれないな。(すでに手元にあるPowerBookは1年くらい死亡状態なので未確認)
blogがウェブの中心になりつつあるのだから、やっぱり文字表現は重要になると思う。気軽に書けるblogというシステムからきれいにアウトプットされたらやっぱりうれしいしね。。
「サーバ側できれいなフォントを用いてレンダリングしPDF化する」とかかな。

固いSTLを、やわらかく

もうひとつ気づいたことがあって、それはSTLを広めようとする方の説明が、難しく感じることが多いということ。
これをもっと柔らかく、おいしいところだけを教えるサイトか本があればうれしいと思ったのです。
いや、きちんと理解しようとしないほうにも問題はあるのは分かっているのですが、独自の用語が多すぎる気もするのですね。STLを広めようとする方って、テンプレートはもちろん、C++全般の仕様とか詳しくて、Effectiveシリーズも読んでいて、という方で*2、お気楽にプログラムをやっている人よりも知ってる用語が多くて当然なのですが。
でも、STLって本当はそんな高い位置におかずに、C++中級くらいでうまい使いどころを教えてもらったら楽なのになー、と思っています。
ちょっと考えたのですが、「配列によるコード」→「vectorによるコード」というコード比較だけでもいいと思います。これでどれだけエンバグ耐性が強くなるか、という話が載っていたらいいなー、と。「STL使ったら、バグがなくなった!」という挑発的なタイトルで。
あ、思っていることを書いていたら分かってきました。
STLの説明」よりも、まず「STLの魅力」を「コードで表現」して欲しい、のです。実際使い始めた自分は便利だなー、と薄々感じているのですが、所詮「薄々」なので。。remove_ifとか名前と効果の魅力の割に、使い方が分かりにくく泥沼に足を取られた、とすら感じているのです。STLやって最初にこのあたりに来たらやめちゃうかも、と思いますよ。
以上、勝手な言葉を書き連ねましたが、なかなか難しいとは思います。
ただ、感じている感覚は、きっと他にも感じている人がいるだろうとも思います。そこで、この感覚に近い言葉を探してみました。結城さんのブログのエントリにいい言葉がありましたので、それを引用させていただきます。

プロジェクトのすべての情報を盛り込んだ資料が必ずしも悪いわけではありません。読み手のことを考えて「適切に要点をまとめたページ」があったり、「資料のこことここをまず読む」などのディレクションが示されていれば、ですけれど。

http://blogs.yahoo.co.jp/hyuki0000/7547000.html

*1:ってか、まだご健在ですね…ドナルド・クヌース - Wikipedia

*2:数少ない知人から推測した自分の妄想です。