1 名前:デフォルトの名無しさん mailto:sage [2007/07/19(木) 10:10:24 ] プログラミング言語 D について語るスレッドです。 過去スレは >>2 ■本家 ttp://www.digitalmars.com/d/ ttp://www.kmonos.net/alang/d/ (和訳) ■コンパイラ ttp://www.digitalmars.com/d/dcompiler.html (DMD, 本家) ttp://dgcc.sourceforge.net/ (GDC, gccフロントエンド) ttp://gdcmac.sourceforge.net/ (GDCのmac用バイナリ) ■参考URL ttp://f17.aaa.livedoor.jp/~labamba/ (D言語研究) ttp://dsource.org/ (dsource) ttp://www.sun-inet.or.jp/~yaneurao/dlang/ ttp://wisdom.sakura.ne.jp/programming/d/
75 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 07:42:58 ] > System is the same as Windows on Windows platforms, > and C on other platforms. 'System'はWindowsプラットフォームでは'Windows'と同じであり、 それ以外では'C'と同じです。 要するにプラットフォーム依存のLinkageを指定できるってことだな。
76 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 09:09:04 ] What's New for D 2.003 Jul 21, 2007 New/Changed Features * Added 0x78 Codeview extension for type dchar. * Moved next member from Object.Error to Object.Exception * Added ForeachRangeStatement * . Added extern (System) * Added std.traits * Bugzilla 345: updated std.uni.isUniAlpha to Unicode 5.0.0
77 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 11:40:01 ] 大きいのか小さいのか微妙な変化だな… 個人的には __traits よりも、デバッグ時に関数の隠し引数にでも _caller とか入れてくれたらと思う。
78 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 11:48:57 ] ええい、たった今初めてversion2系をちょっと試してみて速攻1系に戻したところだというのにw しかし何だろう、このforeach周りの不自然な強力さは。 RangeクラスとRangeリテラルを作ろうとは思わなかったんだろうか。 あと範囲を表す関係の演算子って最後を含むか含まないかで".."と"..."あたり二つ用意しないとどことなくメンドイのよね。 traitsはメタプログラミング関係か?
79 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 12:09:07 ] これは強力・・なのか?
80 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 12:44:30 ] >>77 debugブロック?内でしか使えないとか
81 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 15:59:38 ] ForeachRangeキタ━━━━━━(゚∀゚)━━━━━━ !!!!! これを待ってたんだよ。ウォルタたん大好き!
82 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 16:23:34 ] perlは、 for (0..3){print $_;} 0123なんだけど D 2.003 だと foreach (i; 0 .. 3){writef(i);} 012なのね
83 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 16:28:12 ] それは配列のスライスと一緒だな。
84 名前:77 mailto:sage [2007/07/23(月) 17:23:02 ] >>80 import std.stdio; struct Caller{ string fileName; int line; } debug void func(Caller _caller, int x){ writefln("%s(%d) : x = %d", _caller.fileName, _caller.line, x); writefln(x); } else void func(int x){ writefln(x); } void main(){ debug func(Caller(__FILE__, __LINE__), 10); else func(10); } こういうようなのを、 import std.stdio; void func(int x){ debug writefln("%s(%d) : x = %d", _caller.fileName, _caller.line, x); return x; } void main(){ func(10); } っていう風に書けたらいいなって思って。 これでは省いたけど、モジュール名とか呼び出し元の関数名とかモジュール名とか 呼び出し元の関数の_callerとかもあるとさらにいいかも? 長文で申し訳ない。
85 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 17:34:10 ] flectionedとか
86 名前:77 mailto:sage [2007/07/23(月) 18:24:49 ] flectionedって、そこまで詳細な情報って得られるの? 呼び出し元のファイル名の取り出し方とか。 軽く見聞きした程度だからどこまでできるかよくわかってないのだけど… でもまぁ、とりあえず標準でそういう機能がほしいところですね…
87 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 18:47:15 ] >>66 // Otsu.new!!(argAlloc)(argCtor) class Otsu{ template New_(aA...){ static typeof(this) New_(TaC...)(TaC aC){ return new(aA) typeof(this)(aC); } } template New(aA...){ alias New_!(aA) New; } int n; this(int n){ this.n = n; } } //任意のクラスに対応できる版 template niw_(T,aA...){ T niw_(TaC...)(TaC aC){ return new(aA) T(aC); } } template niw(T, aA...){ alias niw_!(T,aA) niw; } void main(){ printf("%d\n", Otsu.New!()(3).n); printf("%d\n", niw!(Otsu)(5).n); } とかどうだろう
88 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 20:05:49 ] ヲルターは日曜日にDつくってんのかな
89 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 20:56:51 ] __traitsのallMembersやgetMemberは列挙体にも対応してるのか。 願って止まなかった機能追加キタコレ。
90 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 21:20:17 ] なんで 1.x にはForeachRangeStatementが追加されていないんだああああああああああああああああああああああああ
91 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 21:25:45 ] あわてるな これはヲルターの罠だ
92 名前:デフォルトの名無しさん mailto:sage [2007/07/23(月) 23:41:47 ] 更新まだー
93 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 08:27:24 ] >>87 ほおお
94 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 15:06:03 ] >>39 sc.iniが分からないから どうやればいいか分からないですけど 前回のはプロクシの部分で不味かったみたいなので修正 sakuratan.ddo.jp/uploader/source/date45550.lzh @プロクシの有無 A@が有ならプロクシ接続先の入力 B環境変数の登録 のみ確認します
95 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 15:12:51 ] まぁこんなの全然必要無いですけどね…
96 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 16:41:26 ] やっとForeachRangeStatementきたか。 .. 演算子でタプルを作れたら面白そう。 void f(int[] a ...); f(0 .. 2); // == f(0, 1) auto x = [3 .. 6]; // == [3, 4, 5] あんまり使い道なさそうだけど
97 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 17:15:44 ] >>96 template t(T...){ alias T t; } template range(int s, int e){ static if(s<e){ alias t!(s, range!(s+1,e)) range; } else{ alias t!() range; } } import std.stdio; void main(){ writefln((int x,int y){return x+y;}(range!(0,2))); // 1 writefln([range!(3,6)]); // [3,4,5] } とかテンプレートで
98 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 22:09:18 ] ['a' .. 'z'] とかなら使いようもあるかも。
99 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 22:10:02 ] と思ったが、['a' .. 'z' + 1] か。汚いな。
100 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 22:24:32 ] Ruby みたいに .. と ... の使い分けがあれば
101 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 22:50:18 ] しかし今更 .. が末尾を含むことにされても困る
102 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 23:12:39 ] +1でよくねwww
103 名前:デフォルトの名無しさん mailto:sage [2007/07/24(火) 23:15:32 ] どっちかというと使い分けするほうが俺的にはめんどい だいたい..と...とか似すぎで読み違え頻発wwするかは知らないけど
104 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 00:28:16 ] いまどきキーワードで色分け出来ないエディタを使ってる人は なかなかいないだろうから .. と ... で色を変えりゃいい そういう問題でもないか
105 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 01:24:54 ] 直感的に反するだろうね
106 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 02:28:42 ] === がなくなって is になったときって 間違いやすいから変わったのかな rubyで .. と ... が使われているなら 使い勝手はどうかリサーチしてみればいいんじゃね
107 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 06:23:46 ] VSPluginD アップデートしてくれないかなぁ
108 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 06:25:00 ] What's New for D 1.020 Jul 23, 2007 New/Changed Features Bugs Fixed Fixed extern (System)
109 名前:デフォルトの名無しさん [2007/07/25(水) 07:52:30 ] 久々にみてみたら、更新に古いバグジラ番号のFixが結構多い気がする これはそろそろか・・・?
110 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 13:33:03 ] >>106 ruby 使ってるけど .. と ... でどっちが末尾含むのか毎回混乱してる.
111 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 14:22:20 ] >>110 .が、一つ多いのだから 含むと覚えればよい
112 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 16:10:00 ] ... は含まない方だよ。
113 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 16:47:02 ] >>110-112 おいもう結論が出たのか と思ったがDは>>111 の考えでおkというだけだな
114 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 16:51:03 ] 余計どっちがどっちかわかんなくなるがなw
115 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:12:02 ] $[a,b) とかいう表記でもあればなあ。
116 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 17:31:57 ] Unicode使って含む表記を a〜b にするとか 嘘
117 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 18:42:39 ] 1 to 5 とか。 予約語を増やす方向には行かなさそうだけど・・・ (というか、toは変数名に多く使われてそうだから余計可能性ないか)
118 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:31:09 ] 3項演算子 in.. の追加まだー if(n in 2..4) writefln(n);
119 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 19:39:14 ] between演算子か。 クエリ言語でしか見たことないけど、 assert(index in 0 .. array.length); とか書ければ便利そうだな。
120 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 20:03:29 ] 前から if (2 <= x < 4) とか書きたかったんだよ
121 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 20:17:05 ] python キタ━━━━━━(゚∀゚)━━━━━━ !!!!
122 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 23:17:54 ] ICFPの国際プログラミング・コンテストで日本のチーム「kuma-」が2位に >プログラミング言語としてはRuby,C,C++,D,Java,Perlを使用した。 Dが国際プログラミングコンテストの日本人チームで使われたとか。 メジャーになった…のか?
123 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 23:35:25 ] 検索してみたらそれ去年の記事ジャマイカ 今年のコンテストが終わったばかりだからややこしい それはそれとして去年のkuma-はk.inaba氏含めたチームなんだから メジャーになったと言われてもちょっと納得できない罠
124 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 23:39:56 ] 今年はk.inaba氏とshinh氏しか使ってないに100ガバス
125 名前:デフォルトの名無しさん mailto:sage [2007/07/25(水) 23:45:13 ] 今年はrope(C++)とHaskelあたりが主力だったのかね Dは残念でした
126 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 09:40:49 ] >>118 Rangeクラス化で二項を推すぜー class Range(ValueType : Comparable){ ValueType min, max; bool opIn_r(ValueType lhs){ return (min <= value) && (value < max); } } if(n in 2..4) writefln(n);
127 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:15:42 ] phobosを使って作ったアプリを配布するときはソースを公開すべき? phobosのライセンスはZlibライセンスに似ていますが、GPLとは 書いてないし、LGPLと解釈すれば自分で書いたソースは公開しなくても よいような気がする
128 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 12:49:20 ] >>127 >公開 そんなことないでしょ
129 名前:デフォルトの名無しさん mailto:sage [2007/07/26(木) 18:05:22 ] >>126 なんか最適化を阻害しそうじゃね? (x in a .. b) が (x >= a && x < b) や (x.opCmp(a) >= 0 && x.opCmp(b) < 0) と見なされれば十分だと思う。
130 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 17:48:45 ] みんなデバッグどうしてるの? flectioned 使えば落ちたときのスタックトレースを見ることはできるけど ブレークポイント設定してステップ実行とかしたいのに windbg は不安定すぎて使い物にならないんだけど・・・
131 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 17:57:13 ] >>130 俺はwindbgでそんなに困ったことなかった… ddbgはどう?使ったことないけど
132 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 18:38:41 ] >>130 参考にならないかもしれないけど、俺はVC++2003使ってる。 これだけで、ステップ実行、落ちたときの呼び出し履歴、リソースエディタと、 今のDに足りないものが補えてる。
133 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 18:49:35 ] >>131 thx ddbgというのもあるんだね 今度試してみるよ VS2005でうまくいけば一番いいんだけども _Dmainに関数ブレイクポイントを設定して頭からステップ実行するしかできてなくて不便 行ブレイクポイントを設定しても「このドキュメントのシンボルが読込まれていません。」と表示されて ブレークポイントが無効化されてしまう これは設定でなんとかなるのかな?
134 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 21:27:04 ] コンパイラに-opがあるのをつけてみたらどうかな あとasm{int 3;}がブレイクポイントになる。 過去スレにあった
135 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 23:02:56 ] >>132 VS がシンボル情報を認識できているってこと? どうやるんだろう >>134 -op をやるだけではダメだった シンボル情報がないから対応するソースを表示できないって怒られた asm はちゃんとブレークポイントになったよ
136 名前:デフォルトの名無しさん mailto:sage [2007/07/27(金) 23:12:44 ] _Dmain に関数ブレークポイントを設定したらうまくソースとの対応を認識してくれるので map ファイルに出てくる他のシンボル名で関数ブレークポイントを設定したらどの関数でもうまくいった VS に map ファイルの内容をシンボル情報として使ってもらう方法をどなたかご存じないですか?
137 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 00:53:33 ] やっぱりリンカが PDB ファイルを出力してくれないと VS ではどうしようもない気がしてきたんですが・・・ orz オブジェクトファイルの形式が違うからなあ・・・
138 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 03:31:24 ] 何度も書き込んですまん ddbg 試してみたけど出力に多バイト文字含んでると落ちるね ddbg を実行するディレクトリ名とか・・・ ddbg は Code::Blocks をフロントエンドとして動作できるらしいからそっちに期待してみる 前スレの人は失敗に終わったようだが・・・
139 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 19:34:22 ] enum Foo : ushort { HAGE = 11, HIGE = 22, HUGE = 33, HOGE = 999, } template Bar(T) { const char[] Bar = T.stringof; } void main() { /* ちゃんとHAGE HIGE HUGE HOGEが表示される */ foreach (str; __traits(allMembers, Foo)) { printf("%.*s\n", str); } Foo foo; printf("%.*s\n", Foo.stringof); //"ushort"が表示される printf("%.*s\n", (Foo).stringof); //"ushort"が表示される printf("%.*s\n", foo.stringof); //"ushort"が表示される printf("%.*s\n", Bar!(Foo)); //"ushort"が表示される } どうすればFooという型から(コンパイル時評価可能な)文字列"Foo"を取得できるんだ?
140 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 19:59:14 ] コンパイラのバグくさい気がするのでテケトーに回避策を試した結果。 template Bar(T) {invariant Bar = (T[]).stringof[0..$-2]; } でOK
141 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 20:17:53 ] >>140 素敵な回避策だ。 トンクス!
142 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 21:45:04 ] ∩_ 〈〈〈 ヽ 〈⊃ } ∩___∩ | | | ノ ヽ ! ! / ● ● | / | ( _●_) ミ/ <こいつ最高にアホ 彡、 |∪| / / __ ヽノ / (___) / ∩___∩ | ノ ヽ ! / ● ● | こいつも最高にアホ | ( _●_) ミ 彡、 |∪| / .\ / __ ヽノ / \ ...\ (___) / .│ ..│ / ヽ l..lUUU .U
143 名前:デフォルトの名無しさん mailto:sage [2007/07/28(土) 23:02:35 ] うけけめけ
144 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 15:24:36 ] ばーじょんあっぷまだー?
145 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 18:26:52 ] >>129 考えてみたけど、インライン化やメンバをfinalにする、Rangeオブジェクトをスタックに置く等が行われれば、 案外いい感じに最適化されるんじゃなかろーかという気がした。 あとRangeクラスはあると実際便利なので、標準で入ってて欲しいなーという願望もあったり。 パフォーマンスを気にしてクラス作るのを敬遠しちゃって、 コードの可読性とかで大きく損をしてるケースを沢山見るのよねぇ。かなり歯がゆい気分になる。 D言語には是非とも、クラス化のリスクを徹底的に減らすような最適化を推進してもらいたいデス。 ところでForeachRangeStatementの箇所がまだ翻訳されてないんで自信無いけど、 Rangeとして書けるのは整数だけ? いくつかの演算子が適用できればオブジェクトでも行けるようにも読める気がするけど。
146 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 18:30:25 ] >>145 イテレータにも使えるとWalter氏が言ってたような…
147 名前:名無しさん@そうだ選挙に行こう mailto:sage [2007/07/29(日) 18:45:36 ] >>145 ForeachRangeStatementは今のところスカラーな数値(整数/実数/虚数)だけ。 ただ、構造体/クラスに対応する考えはあるみたい。 news://news.digitalmars.com:119/f817uv$aqd$2@digitalmars.com
148 名前:デフォルトの名無しさん mailto:sage [2007/07/29(日) 22:10:51 ] void main() { int[5] a; foreach(p; &a[0] .. &a[$-1]) writefln(p); } ポインタ型にも適用できるけど、型の大きさにかかわらず1刻みになるようだな。
149 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 14:53:19 ] Cのdmcでdll作りたいんだけど、どこで聞けばいい?
150 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 15:01:13 ] DMCスレ落ちたんか
151 名前:デフォルトの名無しさん mailto:sage [2007/07/30(月) 15:14:15 ] クラウザーさん
152 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 00:01:06 ] アップデートまだー?
153 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 16:57:55 ] 関数が複数の値を返せたらいいのになあ・・・
154 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 17:04:45 ] Dにインデクサないの?
155 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 20:25:18 ] opIndex?
156 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 22:47:10 ] だよね
157 名前:デフォルトの名無しさん mailto:sage [2007/08/03(金) 22:48:31 ] >>153 Tupleを返せたらいいんだけどな なんでできないんだ
158 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 01:21:34 ] Tupleはコンパイルタイムにしか存在しないデータ型だから無理じゃね?
159 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 03:43:07 ] Dには集合型ないの?
160 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 04:12:09 ] >>158 タプル自体の構成を変更したりはできないけど、 タプルの各要素を実行時に変更するのはOK。 ので、 int n; char[] str; Tuple!(int,char[]) retTupleFunc(){ return Tuple!(3,"hoge".dup); } Tuple!(n,str) = retTupleFunc(); というような感じのが、もっとマシな構文で実現される整合性の余地はある。
161 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 04:19:57 ] 早くタプルリテラルを追加してほしい。
162 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 04:24:44 ] $(int, char[]) だの @(int, char[]) だの、 まだ使ってない記号を導入するつもりはないんだろうかね。
163 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 04:42:07 ] それより、変数宣言以外での、式で使うカンマ構文をナシにして、 a,b,c = f(); で済むようにすりゃ簡潔でいいと思う。 f(x,y,z)とかf((x,y),z)とかやるときも構文の不整合起こさないで済みそうだし。
164 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 11:01:11 ] >>163 それ、不整合を起こさないためには必須だけど代わりの構文が無いと困る。
165 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 11:07:02 ] >>163 Luaでそんなことやってたけど、 便利だわな
166 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 13:40:38 ] カンマ演算子もタプルを生成するようにして、タプルをスカラーで評価したら一番最後の値が返されるようにするとか。
167 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 15:18:03 ] 今のところはこういうやつでお茶を濁すしかないのかね。 これは C++ だが。 www7b.biglobe.ne.jp/~robe/pf/pf011.html
168 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 15:54:29 ] テンプレート型にstaticな演算子が適用できないのは仕様? struct S { static void opAssign(int a) { writefln(a); } } struct ST(T) { static void opAssign(int a) { writefln(a); } } void main() { S = 1; // ok ST!(int) = 1; // error ST!(int).opAssign(1); // ok }
169 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 17:18:08 ] alias ST!(int) STI; STI = 1; とすれば通るけどね
170 名前:デフォルトの名無しさん mailto:sage [2007/08/04(土) 17:42:19 ] 前にもそんな感じのテンプレートの挙動があったな。 まあ仕様じゃなくてバグだろう。
171 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 01:13:41 ] >>165 むちゃくちゃ好きだったLuaとSquirrelだけど D言語にはまった以降いらなくなってしまった・・・
172 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 01:16:16 ] 和訳の中の人はなんであんなにマメなんだ?
173 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 07:11:48 ] まあ、なんにしろありがたいことは確かだ。
174 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 11:56:59 ] FAQかもしれませんがGTK+ってDからも使えますか?
175 名前:デフォルトの名無しさん mailto:sage [2007/08/05(日) 12:03:28 ] っ gtkD