Skip to content

Instantly share code, notes, and snippets.

@faithandbrave
Last active April 5, 2017 08:41
Show Gist options
  • Select an option

  • Save faithandbrave/8fb38f71b168b6e9c3b9fe5bfb67fbc3 to your computer and use it in GitHub Desktop.

Select an option

Save faithandbrave/8fb38f71b168b6e9c3b9fe5bfb67fbc3 to your computer and use it in GitHub Desktop.

『Optimized C++』 初版第1刷へのフィードバック

オライリー・ジャパン様宛に、以下のフィードバックを送りました。 技術的なフィードバックは最小限で、翻訳と訳注に対するものがメインです。

  1. 「rvalue reference」の訳語が「rvalue参照 (1.5.1, p6)」と「右辺値参照 (6.6.4, p127)」で表記揺れしています。rvalueの訳語として「右辺値」が多く使われているようですので、後者の訳語を採用するのがよいかと思います。ただし、ebookではなく書籍媒体で確認したため、この表記揺れの指摘は網羅的でない可能性があります。
  2. 「5.1.2 ならし時間コスト (p87)」の訳注について、amortized costがどの日本語訳に該当するのかが明確ではありません。「ならし時間コストは原文ではamortized cost。これは元来会計用語で償却コストとも訳される」のように、原文と訳文を対称的にする必要があると思います。
  3. 「C++11以前」という言い回しが、C++11を含まないことを意味しています。たとえば「6.1.1のスレッドローカル記憶域期間 (p98)」の一行目には以下のように「C++11以降」と「C++11以前」両方含まれており、解釈が難しい文章になっております。「C++11以降、プログラムはスレッドローカル記憶域期間を持つ変数を定義できるようになった。C++11以前は、コンパイラとフレームワークの一部が非標準として同様の機能を提供していた。」 国語辞典を引くと、「以前」が対象を含む場合と含まない場合、両方がありえるようです。法律用語としてはより厳密に「以前」が対象を含むことが定められています。プログラマとしては「以上、以下」と同様に対象を含むことが自然に思います。いずれにしても「以降」と「以前」が混在する本書においては、含む・含まないの区別は必要かと思います。他所も確認したところ「以降」が含まれる文章は正しく「対象を含む」文章になっており、「以前」が含まれる文章が全体的に「対象を含まない」ことを意図しているようです。
  4. versionの訳語として版とバージョンが統一されていません。コンパイラに対しては「バージョン」という訳語が使われていますが、C++については「版」という訳語が使われています。「ムーブセマンティクスは古い版のC++で繰り返し生じていた問題を解決する。 (6.6 p124)」 古い版のような言い回しは、私としては聞き慣れないため、私見では「バージョン」にするのがよいかと思います。ほかを確認しきれていませんが、バリエーションという意味でのversionは版でも問題ないと思います(たとえばオーバーロードの文脈でのコンテナ版、配列版など)。
  5. これは翻訳に対するフィードバックではおそらくないので、原書に対するフィードバックとして原著者に伝えていただくことを期待して。「7.4.3.1 例外指定を使わない」は、noexceptに対する主張がよくわかりませんでした。「(機能として)わかりにくい」で終わっていますが、noexceptも例外指定に含めるものとして使わないことを推奨するものなのかどうかが読み取れませんでした。noexceptは「例外送出によるスタック巻き戻しのためのスタックを確保しない」という最適化によってパフォーマンス向上に貢献する機能です。noexceptを使用することによるネガティブな影響はないように思います。
  6. 「9.7 C++標準ライブラリを使って整列を最適化する (p205)」において、1行目の「にティムソート」がおかしな表記になっています。的確な表現ができなくて申し訳ないですが、2文字分のスペースで「㍉」のようになんらかの編集ミスで合成文字のようになっているようです
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment