新・闘わないプログラマ No.178

求める答えはこの本に?


先日、ある方からのメールで、雑誌でおもしろい特集をしているよ、という情報をいただきました。その雑誌というのが「日経ソフトウェア」2001年6月号(日経BP社刊)の、「求める答えはこの本にある! プログラミング書籍 BEST90」という特集です。
書店でパラパラとめくって見たのですが、なかなかおいしそう(=この駄文のネタになる)なので、思わず買ってしまいました…税込み980円なり。
私自身「日経ソフトウェア」を買うのは初めて、と言うか、まともに読んだのも初めてです。確か創刊号を書店でざっと立ち読みして、それ以降、この雑誌の存在自体も忘れていたほどです。要するにいまいちだったと言うか、私にとっては読みたいと思うような内容ではなかった、ということもあって…。

で、なぜこの雑誌の特集を取り上げたかと言うと、私が以前ネタにした「入門ソフトウェアシリーズ(1) C言語」(河西朝雄著、ナツメ社)の著者が寄稿している、ってのと、この本自体が「BEST90」の中に入っている、ってことだったりします。
この特集の「お気に入りの書き手を見つける」というところで、こんなことが書いてありました(「日経ソフトウェア」2001年6月号、日経BP社刊、83〜84ページ)。

河西朝雄と矢沢久雄は安定した品質の入門書を提供
日本人も取り上げましょう。河西朝雄は高校の教諭を務めながら、入門書を中心にプログラミング関連の本を年に数冊のペースで書き続けている人物です。(中略)
彼が書く本はアルゴリズムの本だけではありません。C言語の学校用教科書という風情の「入門ソフトウェアシリーズ1 C言語」もあれば、(後略)

以前、河西氏の本をネタにした私の駄文に関して、「氏の本は非常にわかりやすいし優れている。あなたの批判は不当だ」というようなメールを頂いたことがありますけど、私は本の中の間違っている記述を指摘したに過ぎないわけで、別の面から見たら良書なのかも知れませんが、それはそれ、これはこれ、ということです。
それはともかく、件の特集のBEST90で、C言語の(環境非依存の)入門書はこの河西氏の本1冊、ってのはいくらなんでも…それを載せるんなら、他にいい本があるでしょう、って思ったりするわけでして、まあ河西氏自身がこの特集に寄稿している(89〜91ページ)関係もあるんでしょうけど、何か納得の行かないものを感じてしまいます。そういえば、上の引用で出てきたもう一人、矢沢久雄氏、この特集ではないですけど、この雑誌に連載記事を書いている人のようで…要するに、身内を誉めてるだけ?

さてさて、せっかく高い金(=980円)も出して買った雑誌、他のところも見て、ネタ探し。
というわけで、やっぱりこれでしょう…「C言語の原典であり入門書としても使える『K&R』」というところ。いくつか引用してみます。まず、70ページ。

最初に紹介する本は「プログラミング言語C 第2版」です。著者のカーニハン(Kernighan)とリッチー(Ritchie)の頭文字から「K&R(ケーアンドアール)」本とも呼ばれるこの本は、だれも文句を付けることがない、C言語の原典です。

いや、K&Rの内容、私は文句を付けたいところもいくつかあったりしますけど、原典だからといって、いちゃもん付けちゃいけない、というのは、それはそれで変なわけでして。まあ、K&Rのような原典に対しては、心してかからないと、いちゃもんをつけた方が反撃に会って撃沈したりするのがオチだったりしますが。
まあ、この文章、「C言語の原典であることに誰も文句を付けない」という意味にも取れないことはないですけど…。
次に、71ページから。

C言語には「K&RのC」と「ANSIのC」の二つがある時期もありました。しかし、1988年にANSI規格に準拠したK&R本の第2版が出版され、その混乱に終止符が打たれたわけです。

別にその1988年に急に「終止符が打たれた」というわけでは無いような…本も第1版と第2版がかなり長い間に渡って併売されていたように記憶していますし、プログラミングの現場では、かなり長い間並存していた(いまでも並存している?)わけで。
同じ71ページから、また引用します。

なかでも「やさしい入門」の章は特筆すべき出来ばえです。37ページとさほど長くない分量で、プログラム「hello, workdという単語を印字せよ」に始まり、いくつかの簡単なサンプル・プログラムを通して変数、算術計算、ループ、標準ライブラリによる入出力、条件分岐、配列、関数、文字配列、スコープなどの話題を概観できるように工夫されています。(中略)
C言語の入門者向け解説本はたくさんありますが、どの本をとっても、この章より特別やさしいわけではありません。入門者であっても、恐れることなくこの本を買って、読んでみてほしいと思います。

ということですけど、K&Rの第1章「やさしい入門」、結構難しいと思うんですけど。まあ、読者が今までに他言語でのプログラミングの経験があるかどうか、どれだけ経験があるか、ということにも依存しますけど、いずれにしよかなり難しいのではないか、と。
特にプログラミングの初心者があの本を読むと、だいたい第1章の真中くらいで挫折する、ってのが、おきまりのパターンのようですね。最初の20〜30ページだけ読んだ形跡があって、あとはまっさらなK&R本が世間に大量に溢れているのではないか、などと思ったりして…。
次に72ページより…。

プログラミング言語Cの日本語版の翻訳は適切ですが、残念ながら「関数(function)」「変数(variable)」のような形での対応する英単語の表示がありません。プログラミングでよく使う言葉を、英語でなんというか知っておかないと、英文のドキュメントが読めません。K&R本の日本語版と英語版を並べておいておくと、英語の辞書代わりに使うことも出来て重宝です。

「日本語版の翻訳は適切」というのにはかなり異議がありますけど、英語版も必要ね、ってのには同意します。日本語版、結構誤訳があったりして、いろんな人が指摘しているにもかかわらず、全然直らない、ってのが何故なのか不思議だったりします。私も読んでいて「あれ?」って思ったら案の定誤訳だった、ってのがいくつもありました。どこだったか忘れましたけど、「宣言(declaration)」と「定義(definition)」を完全に取り違えて訳してあるとか。
あと「英語の辞書代わり」って言うか、こういう専門用語の英訳・和訳では、普通の英語の辞書はほとんど役に立たないわけで、翻訳の日本語版のほかに英語版も買う、ってのはこういう「原典」本には重要なんじゃないか、などと思うわけです。
まあ、英語がすらすら読めれば、わざわざ誤訳満載の日本語版を買う必要も無いのかも知れませんが、それを言われたりすると…耳が痛い。

[前へ] [次へ]

[Home] [戻る]


mailto:lepton@amy.hi-ho.ne.jp