日本語訳について
This document is a Japanese version of "D Programming Language", written by Walter Bright and translated by Kazuhiro Inaba. If you want to contact me, just send me an e-mail (kiki .a.t. kmonos .d.o.t. net) or post to the message board. Any comments and suggestions are welcome.
この文書は、プログラミング言語 D の日本語リファレンスです。
Walter Bright 氏による "D Programming Language" を k.inaba が原著者の承諾を得て日本語へ翻訳しました。 誤訳の指摘等はメール (kiki .a.t. kmonos .d.o.t. net) や 掲示板 でお気軽にどうぞ。 大歓迎です。
一括ダウンロードはこちら:
- 2010/05/17 version (Zipped HTML)
- 2010/05/17 version (CHM) ‐ Vista など新しめの Windows で CHM 版をダウンロードした場合は、プロパティで「ブロックの解除」しないと読めません。ご注意を。 → KB902225 - Special Thanks to >>491 @ D言語スレPart11
日本語のD言語入門記事や、Dで開発されたアプリケーションなどの情報は:
などにまとまっています。
2010/05/16 の翻訳状況
- 作業状況: (完全翻訳済みバージョン) → (対応作業中)
- 2x-Lang : 2.046
- 2x-Phobos : 2.046
- 1x-Lang : 1.061
- 1x-Phobos : 1.061
- ToDo: changelogのスタイル
- ToDo: phobosのスタイル。なんかもうcandydoc化したい
- ToDo: svnのddocベースでの翻訳体制 http://www.dsource.org/projects/phobos/browser/trunk/docsrc と思ったけど更新されてない!!!と思ったら2.013では更新されてる!!!どうしたものか
docs changelog
- 2.046 (1.061)
- 2.045 (1.060)
- arrays: .initについて記述
- dstyle: タブは使うな
- hash_map: arraysから独立
- phobos/std_bigint: 復活
- phobos/std_complex: re,im 表現のみを残した?
- 2.042
- builtin.html の訳の改善 (Thanks to Mr. Kajiwara!)
- dll: DLLの作り方がまたかわってる
- dmd-linux: 64bit Linuxへの入れ方
- phobos/object: reserve, assumeSafeAppend (に改名)
- 2.041 (1.057)
- arrays: 暗黙のlengthはdeprecated。byKey, byValue, get
- attribute: inout, @disable
- class: static shared コンストラクタ等
- cpp0x: conceptとの比較
- d-floating-point: min→min_normal
- expression: !in
- faq: shared関係のFAQ追加
- function: CTFEの制限解除(lazy引数, new Struct, delegate, function)
- interface: final, static, 契約
- interfaceToC: 配列の扱い
- lex: __EOF__
- module: static shared コンストラクタ等
- operatoroverloading: 完全リニューアル
- template-mixin: テンプレート宣言に "mixin" が必須になった
- traits: identifier, getOverloads 等
- phobos/objects: モジュールと配列関係の関数が増えてる
- phobos/std_range: takeとreplicateの引数順が変わった
- phobos/std_thread: TLS関係のAPIを削除
- 2.039 (1.055)
- function: auto, auto ref, inout
- template: auto ref
- traits: isRef, isOut, isLazy
- 2.037 (1.053)
- array: 静的配列が中途半端に値型になった
- D1toD2: 新規追加
- declaration: typedef が消えた
- dmd-*: -noboundscheck追加、-safe削除
- expression: typeid(型)に加えtypeid(式)もOKに。typedef が消えた。^^ 演算子。
- function: CTFEできるための条件やや緩和。safe/trusted function, property
- operatoroverloading: opDot削除、opPow, opDispatch追加
- overview: typedef が消えた
- property: @property
- type: typedef が消えた
- unittest: 新規追加(ほぼ、class.htmlにあったものを独立ファイルに移しただけ)
- phobos/std_math: いろいろ
- 2.036 (1.051)
- いろいろ (バグフィックス中心)
- 2.032 (1.047)
- abi: Invariant→Immutable, 配列, プロパティ関係のABI変更
- attribute: align属性の効果範囲について説明を詳しく
- dstyle: 構文的に正しいコードのコメントアウトは /+ +/ より version(none){ } を推奨
- phobos/std_metastring: ToString→toStringNow, ParseUinteger→parseUinteger, ParseInteger→parseInteger
- phobos/std_range: advance→popFrontN, retreatN→popBackN
- phobos/std_thread: TLS関係の関数がdeprecatedに
- phobos/std_typetraits: indexOfType→staticIndexOf
- phobos/std_variant: opApply
- 2.031 (1.046)
- dmd-*: -deps スイッチ
- attribute, lex: __gshared, __thread
- statement: final switch, range case
- phobos/*: 色々
- 2.030 (1.045)
- d-floating-point: 新規 (細川研知さんに翻訳ご協力いただきました。感謝!)
- dmd-*: -vtlsスイッチ
- glossary: TLS
- migrate-to-shared: 新規
- phobos/*: 色々
- 2.029 (1.043)
- dmd-freebsd: 新規
- phobos/*: 大幅に更新
- phobos/std_array: 新規
- phobos/std_range: 新規
- phobos/std_regex: 新規
- 2.027 (1.042)
- class: alias this
- dmd-linux, dmd-macosx, dmd-windows: レスポンスファイル
- dll: DLLの作り方改訂
- 2.026 (1.041)
- abi: TBDだった部分が埋まった
- expression: 文字列リテラルの暗黙変換の規定
- lex: エスケープ文字列リテラルの説明削除
- struct: ネスト構造体
- 2.025 (1.040)
- dmd-linux, dmd-windows: bin, lib ディレクトリの変更
- dmd-osx: 新規追加
- statement: .rear→.toe
- phobos/std_math: sgn()追加。powやabsや三角/双曲線関数のシグネチャ拡張
- phobos/std_typecons: alignForSize
- 2.023 (1.039)
- expression: 配列リテラルのキャストの扱い
- version: いくつか定義済みid増えた
- 2.022 (1.038)
- dmd-linux, dmd-windows: -safeオプション
- interface: COMインターフェイスのABI。C++インターフェイス
- memory-safe-d: 新規追加
- module: module(system)
- statement: rangeに対するforeach
- 2.020 (1.036)
- abi: 構造体の返し方と関数名マングリングが微妙に変更
- const3: 関数の後置const/invariant
- function: ref返値。デフォルト引数
- phobos/std_typecons: Unique
- phobos/object: 刷新
- phobos/std_gc: 刷新
- phobos/std_thread: 刷新
- 2.019 (1.035)
- arrays: ^も配列演算できる
- struct: 構造体コンストラクタ
- phobos/std_file: mkdirRecurse, rmdirRecurse
- 2.018 (1.034)
- arrays: 配列演算
- const-faq: 一件追加
- phobos/std_bigint: 新規追加
- 2.017 (1.033)
- 特に大きな変化なし
- 2.016 (1.032)
- class: __vptr, __monitor, GCについてちょっと詳しく
- phobos/object: opEquals, equals の返値型がboolに
- phobos/std_array: 新規追加
- phobos/std_getopt: いくつかオプション追加
- phobos/std_typecons: enumToString, enumFromString
- 2.015 (1.031)
- expression: 構造体の "is" の定義
- template: auto返値型など。制約。
- version: D_PIC
- 2.014 (1.030)
- arrays: alias string の存在がやっと明記された
- phobos/std_bigint: ファイルだけ増えた
- phobos/std_encoding: 新規
- phobos/std_*: いろいろ
- 2.013 (1.029)
- abi: pure/nothrow追加に伴うabi変更
- const-faq: 新規
- cpp0x: 新規
- faq: pure関係
- float: 正しそうだけど最適化できない変形
- function: pure関係
- glossray: ファンクタ、高階関数、述語
- operatoroverloading: opDot関係
- safed: 新規
- template: __FILE__, __LINE__ の仕様変更
- phobos/std_math: 複素数版sin,cos。expi
- phobos/std_numeric: findRoot
- phobos/std_perf: 新規
- phobos/std_string: toStringz()の引数に\0が入ってちゃダメ
- phobos/std_xml: 色々
- 2.012 (1.028)
- expression: == null 問題
- glossary: BLIT
- struct: デストラクタ, postblit, 代入オーバーロード
- version: unittest
- phobos/*: いろいろ
- 2.011 (1.027)
- feature2: 新規追加
- download: 全て本家のウェブ上のダウンロードページのリンクに集約
- pragma: stardaddress
- dcompiler: sc.iniのフォーマットについて説明追加
- phobos/*: いろいろ
- 2.010 (1.026)
- faq: why const
- function: in=final const scope → in=const scope
- phobos/std_stream: createのモードのデフォルトがOutからOutNewに
- 2.009 (1.025)
- const: finalに対する言及が消えた
- const3: いろいろ
- enum: named/anonymous enum をちゃんと区別。manifest enum。
- phobos/std_math: Windowsで使えない関数にNoteがついた
- phobos/std_traits: Mutable
- 2.008 (1.024)
- class: const/invariant class
- const3: final-const-invariantから改名&改訂
- expression: is const/invariant
- interface: const/invariant class
- struct: const/invariant class
- template: struct/union/interface template, thisパラメタ
- phobos/std_algorithm: 新規追加
- phobos/std_bitmanip: 新規追加
- phobos/std_functional: 新規追加
- phobos/std_numelic: 新規追加
- phobos/std_slist: 新規追加
- phobos/std_typecons: 新規追加
- phobos/*: 他色々
- 2.007 (1.023)
- function: クロージャ
- hijack: 新規追加
- operatoroverload: opStar
- phobos/std_thread: FINISHED
- phobos/std_traits: ReturnTypeの関数オブジェクト対応
- 2.006
- *: Debuggerニュースグループへのリンク追加
- function: オーバーロード集合について
- phobos/*: 文字列が片っ端からinvariantに
- phobos/*: いろいろ追加
- phobos/std_contract: 新規追加
- phobos/std_getopt: 新規追加
- phobos/std_variant: 新規追加
- 2.005 (1.022)
- cpp_interface: 新規追加
- COM: 新規追加
- phobos/object: size_t, ptrdiff_t
- phobos/conv: to
- 2.004 (1.021)
- expression: is式で複数引数パターンマッチを可能にしました
- function: 基底クラスの関数をオーバーロードで隠した時の規則
- lex: 新しい文字列リテラル/トークンリテラルについて。予約語__traits。
- module: 複数のstaticコンストラクタ/デストラクタもOK
- traits: isSame, compiles
- phobos/object.html: getMembers
- 1.0/changelog1.html: DMD 0.01~0.47 の changelog
- 2.003 (1.020)
- attribute: extern(System)
- statement: ForeachRangeStatement
- traits: 新規追加
- 2.002 (1.018)
- 全体的にサンプルのprintf→writefln
- const: 新規追加
- iasm: ローカルスタック変数について
- 2.000 (1.016)
- arrays: .idup プロパティ
- class: invariant(){...}と書かなければいけなくなった
- final-const-invariant: 新規追加
- function: 引数にfinal,const,invariant,scope
- phobos/*: final-const-invariant関係の型変更
- 1.014
- expression: 連想配列リテラル
- function: CTFEで新しいリテラルも使えるよ
- struct: 構造体リテラル
- 1.013
- 全体的に: inout→ref の置換
- abi: デバッグ情報関連
- class: final クラス
- declaration: invariant記憶クラス
- function: コンパイル時実行と文字列mixinに関する注意事項
- lex: 予約語macro,ref追加
- phobos/object: ClassInfo.find, ClassInfo.create
- 1.010
- cppstrings: char[]→char*変換は.ptrで
- ddoc: DOCFILENAMEマクロ追加
- expression: 添字内でlengthの説明がなくなって$だけになった
- htomodule: extern変数の説明がマトモになった
- template-comparison: 複数パラメタ特殊化対応
- phobos/object.html: malloc, realloc, extend, capacity
- phobos/std_gc.html: isEmail, isURL
- phobos/std_stdio.html: readln, StdioException
- phobos/std_string.html: isEmail, isURL
- 1.007
- expression: 1<x<2 をコンパイルエラーにするように演算子の結合を変更
- function: コンパイル時in/out/.dupはOK
- phobos: intの代わりにboolやuintを返すようになった関数がたくさん
- 1.006
- dcompiler: -J, -g, -gc スイッチの追加/変更
- function: コンパイル時間数実行について
- template-comparsion: コンパイル時間数実行について
- template-rivisited: コンパイル時間数実行について
- 1.005
- expression: mixin式, import式
- lex: !==, !~, ===, ~~ を完全廃止などなど
- property: .stringOf
- mixin: 新規追加
- module: mixin宣言
- statement: mixin文
- template_comparison: 新規追加
- template_mixin: 元mixin.html
- phobos/object: OffsetInfoの追加
- phobos/std_metastrings: 新規追加
- 1.001
- comparison: C/C++/Javaの列が消えてる...?
- dcompiler: ミラーへのリンク追加
- dlinks: いろいろ追加
- phobos/object: TypeInfoのメソッドが増えた
- phobos/std_gc: ポインタ含むか判定関係の関数追加
- 1.00
- abi: 32bit限定だった記述を一般化
- dstyle: ハンガリアンダメ絶対が消えた
- glossary: NRVO, POD, SFINAE, TMP
- module: 改名選択import
- overview: 細かく色々
- portability: エンディアンについて
- type: base type について
- 0.177
- abi: thisが要るよの"M", 型名のマングリング規則
- expression: 構造体へのキャスト S(v)
- operatoroverloading: opAssign
- struct: クラスとの対比, static opCall周りの諸々
- 0.176
- abi: 連想配列のABI決定
- array: 関数が配列のプロパティぽく使える機能が正式にドキュメント化
- dlinks: リンク切れをばっさばっさ整理
- float: 例外フラグ
- phobos/std_bind: 新規追加
- phobos/std_math: atan2の引数名が逆だったらしい
- phobos/std_socket: TcpSocket復活!
- phobos/std_traits: isStaticArray, isExpresseionTuple 追加
- 0.175
- class: allocatorはstack alloc時は呼ばれない
- declaration: autoとscopeの区別
- expression: scope変数へのnewはstack。is(==super)
- faq: GCの話
- future: D 1.0
- memory: scope
- tuple: 新規追加
- phobos/std_socket: TcpSocket消えた?
- phobos/std_traits: BaseTupleType
- 0.174
- attribute: RAII-autoの代わりにscope属性
- class: .tupleof, scope属性
- expression: 文法整理, ExpressionTuple の扱いについて色々
- statement: 文法整理 (スコープを導入するブロックとそうでないのが混ざってたのを整理)
- function: .funcptrについて
- struct: .tupleofについて
- template: ローカルシンボルへのaliasもOKになった話
- phobos/std_signals: スレッドセーフじゃないよと注意
- phobos/std_traits: 新規追加
- phobos/std_typetuple: 新規追加
- 0.173
- abi: 関数呼び出し規約の詳細な記述
- expression: 負数の%は実装依存
- statement: タプルのforeachについて
- template: タプル引数/可変個引数について
- lisp-java-d: 新規追加
- variadic-function-templates: 新規追加
- phobos/std_c_locale: 新規追加
- phobos/std_signals: 新規追加
- phobos/std_cpuid: 新規追加
- 0.170
- expression: nullの暗黙の型変換規則まわりの変更
- lex: foreach_reverseが予約語
- statement: foreach(delegate) と foreach_reverse の追加
- phobos/*: メモリ不足例外が std.outofmemory.OutOfMemoryException になったぽい
- 0.169
- index: gdcwinへのリンク追加
- 0.168
- class: outerについて
- float: 定数畳み込みについて注意事項
- 0.167
- expression: 配列リテラル、多次元配列new
- garbage: 色々説明が増えた
- type: typedefと数値型昇格まわりのルールを詳細化
- phobos/std_file: getTimes追加
- phobos/std_math: ilogb(±∞)の動作変更
- 0.166
- declaration: lazyが引数につけられるようになった
- function: メンバテンプレートは非virtual。lazy引数。遅延可変個引数
- lazy-evaluation: もろもろの変更を反映してサンプル修正
- lex: lazyが予約語に
- templates-reivisited: テンプレートメタプログラミングの応用例2つ追加
- type: exp -> {return exp;} 変換の話をまるごと削除
- 0.165
- expression: nullはdelegate{return null;}に暗黙変換される
- template: 暗黙変換前の実引数が同じインスタンスのみ統合される
- lazy-evaluation: 新規追加
- type: lazy-evaluation関係の話
- 0.164
- 超いろいろ
- 0.157
- array: サイズ0配列について
- index: 一新
- windbg: 新規追加
- phobos/std_recls: 削除
- phobos/std_thread: stacksize, isSelf追加
- 0.154
- dcompiler: -nofloatオプション
- dlinks: Wikibook追加
- expression: cast式の説明を刷新。特にfloatの精度について
- faq: forよりforeachが好ましい理由
- lex: 接尾辞lとIの廃止
- phobos/std_data: Date構造体
- phobos/std_uni: 新規追加
- 0.151
- ascii-table: 新規追加
- dcompiler: Linux版での環境変数CCの扱い
- phobos/std_process: ddoc化
- 0.150
- arrays: "配列演算"(a[]=b[]+3とか)に関する記述を削除
- declaration: extern変数宣言について
- expression: deleteの説明がなんか詳しくなった
- float: 丸め、例外フラグ制御にはstd.c.fenv
- future: "配列演算" をarraysからこっちに移動
- overview: bit型、no-warningsの項を削除
- statement: 例がついた。returnのとこにscope文への言及
- templates-revisited: 新規追加
- phobos/std_c_*.html: 新規追加
- 0.149
- dlinks: GLeeD,他
- exception-safe: on_scope_* → scope(*)
- faq: #dogfood, #cpp_interface, #cpp_to_D
- operatoroverloading: opSliceAssign
- statement: on_scope_* → scope(*), if(type x=exp), scope文の中ではthrow禁止
- template: 暗黙インスタンス化について
- type: boolに使える演算子について
- 0.148
- arrays: bit配列に関する記述削除
- comparison: ScopeGuard追加, bit配列とmatch式削除
- exception-safe: 新規追加
- iasm: $$じゃなくて$
- operatoroverloading: match式に関する記述削除
- rdmd: 新規追加
- statement: スコープガード, if文での変数宣言
- type: bit→bool
- phobos/object: bit→bool
- phobos/std_bitarray: 新規追加
- 0.147
- comparison, expression, lex, operatoroverloading, statement: match式
- dcompiler: -runの引数順変更
- faq: 正規表現リテラルがDにない理由
- phobos/std_file: listdir正規表現版追加
- phobos/std_regex: ddoc化
- phobos/std_stdio: ddoc化
- phobos/std_string: newlineの追加
- 0.146
- abi: テンプレート値引数のマングル方法が TemplateArg: V Type Value になった
- dcompiler: -runスイッチ追加
- function: main関数について
- lex: shebang行について
- statement: 副作用なし式文はvoidにキャストしないと不正だよ
- phobos/std_date: d_time_nanがconstになった
- phobos/std_file: 例外のドキュメント化、listdir強化
- 0.145
- phobos/std_path: 全体的にドキュメント増強
- 0.144
- dlinks: D real-time programming, Programmiersprache D 追加
- version: iftypeがなくなった
- 0.143
- dlinks: akIDEのリンク変更。 Ragel State Machine Compiler, Sprungmarke.NET 追加
- index: ポルトガル語版のリンク変更
- phobos/std_math: abs, conj, acosh, asinh, atanh 追加。 Γ関数に関していろいろ修正
- phobos/std_path: getName, expandTilde追加
- phobos/std_uri: decodeのドキュメント修正
- 0.142
- attribute: protectedアクセスはthisのフィールドについてのみ
- dbc: in{} 無しだとどんな引数もokという意味なので派生先で in{} を書いても無意味
- dcompiler: -H,-Hd,-Hfオプション追加。.diファイルの扱い
- iasm: deはextendedじゃなくてreal

フォーラム
コメント
ダウンロード
トップ