1 名前:デフォルトの名無しさん [05/02/12 10:35:10 ] D言語一筋で10年ほど勉強しました。 D言語のことなら知らないこと意外ならすべてわかる。 だからなんでも聞いてくれ。 ただし、プライベートなことには答えられねーぞ
157 名前:デフォルトの名無しさん mailto:sage [2007/05/22(火) 00:45:31 ] あるがな。 dmd -w
158 名前:デフォルトの名無しさん mailto:sage [2007/05/23(水) 00:30:43 ] たしかにdmd -wだと警告でコンパイル止まるな
159 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:35:40 ] 長くてすみません。これの実行結果って30を期待したんですが、 そうならないのは何でなんでしょうか? class A { this() { int f() { return x * 3; } b = new B(&f); } int g(int n) { x = n; return b.g; } private int x; private B b; } class B { this(int delegate() f) { this.f = f; } int g() { return f(); } private int delegate() f; } void main() { A a = new A; dout.writefln(a.g(10)); }
160 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:46:19 ] 30 になるけど?
161 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:54:31 ] -debugモードだと3、-releaseモードだと362882156になった -debug -Oで30、-release -Oで362882156
162 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:55:36 ] うお。オプションで変わるのか。
163 名前:デフォルトの名無しさん mailto:sage [2007/05/24(木) 19:57:49 ] -O3 だとちゃんとなってるのに、 -O だと変になるな。
164 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 03:04:31 ] int f() { return x * 3; } ここのxがインスタンス不明になるからじゃないの?
165 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 03:08:49 ] ああ、f が内部関数になってたのか。 これだと this が伝播しないってことか?
166 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 03:15:35 ] そんなことはないだろう。 b = new B({ return x * 3; }); もおかしな挙動をするし。
167 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 03:19:25 ] まあ、バグだな。
168 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 03:53:21 ] b = new B({ return x * 3; }); これだけの情報でどうやって x が A の面罵だって分かるのかな?
169 名前:デフォルトの名無しさん mailto:sage [2007/05/25(金) 03:56:16 ] ああ、 this が電波するのか。 そうなってくれないと困る罠。 まあ、バグだな。
170 名前:デフォルトの名無しさん mailto:sage [2007/05/29(火) 22:03:13 ] D言語って一瞬も流行らなかったな
171 名前:デフォルトの名無しさん [2007/05/29(火) 22:24:31 ] >>170 なに言ってんの? 超流行まくりだよ、俺の頭の中では。
172 名前:デフォルトの名無しさん mailto:sage [2007/05/31(木) 13:36:10 ] まだ仕様変更やコンパイラのバグ多いし これからだろD言語は ・・・だよな?
173 名前:デフォルトの名無しさん [2007/06/02(土) 17:43:29 ] 動的配列の初期化ってまだ実装されてないですよね? 静的配列に動的配列渡すのもまだ未実装なんでしょうか?
174 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 17:50:26 ] void main() { int[] a = [1, 2, 3]; int[3] b = a; } こういうこと?言わんとしていることがちょっとよくわからん。
175 名前:173 mailto:sage [2007/06/02(土) 18:08:23 ] 言葉が足りずすいません 書いてくださったとおりの意味です
176 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 18:17:25 ] どの言語もLISPに近づこうと必死だな
177 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 20:45:59 ] Lispは神域に達してるからな。 人が神に近づこうとするのは自然だ。
178 名前:デフォルトの名無しさん mailto:sage [2007/06/02(土) 23:49:29 ] Visual D マダァ?(・∀・ )っ/凵⌒☆チンチン
179 名前:デフォルトの名無しさん mailto:sage [2007/06/03(日) 00:20:50 ] それよりまずはTangoとDFLに期待
180 名前:デフォルトの名無しさん [2007/06/10(日) 02:25:38 ] D言語で行列積とか計算するのに 標準的なライブラリってありますか? 既出でしたらすいません
181 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 03:19:36 ] >>180 漏れは聞いたことないな つか他の言語でも百家争鳴なかんじじゃね? テンプレートのライブラリも今のところ貧弱っぽいし 他の言語で書かれてあるのを利用するかポーティングするか もしくは自分でつくるかしたほうがいいかも
182 名前:デフォルトの名無しさん mailto:sage [2007/06/24(日) 03:36:07 ] CLAPACK を呼ぶとか。
183 名前:デフォルトの名無しさん mailto:sage [2007/06/25(月) 02:17:50 ] POLICEを呼ぶとか
184 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 00:35:55 ] 俺を呼ぶとか。
185 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 05:36:33 ] 嵐を呼ぶとか
186 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 17:56:03 ] ちょ おまいらwwwww ところでdmd 1.x系統で何事もなく動いてたプログラムを dmd 2.0でコンパイルしたら実行時に Error: Stack Overflow って出て止まるんだけどこれはプログラムに難点があると見るべき?
187 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 18:03:23 ] コンパイラがスタックオーバーフローするなら、コンパイラの不具合くさいが、 実際にソース見てみないことにはわからんな。
188 名前:デフォルトの名無しさん mailto:sage [2007/06/26(火) 18:19:59 ] >>187 レスサンクス ソース眺めてたら原因の箇所がつかめたっぽいので ちょっと調べてみるよ
189 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 02:47:37 ] dmd 1.x系と2.x系ってお手軽に切り替えれたりする?
190 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 05:44:24 ] D1.xとD2.xのソースコードに互換性はない。
191 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 11:28:07 ] うはwwwwwwおkwwwwwww コンパイラはオプションで切り替えれたりしない?
192 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 17:02:55 ] dmd -v1
193 名前:デフォルトの名無しさん mailto:sage [2007/06/29(金) 19:55:55 ] それやるとdmd 1.x系のでコンパイル通ってたのでも通らなかったりする
194 名前:デフォルトの名無しさん [2007/07/07(土) 01:23:23 ] D言語で配列aの要素全体を5で割りたいとかかけたいときって a * 5 a / 5 とかいうやり方が許されていないのは配列演算がまだ実装されてないから?
195 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 01:35:07 ] yes.
196 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 02:22:50 ] >>195 thanks.
197 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 02:33:25 ] FORTRAN 並みの配列演算が行えるといいな。
198 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 02:34:08 ] 間違った。FORTRAN じゃなくて Fortran だ。90 以降。
199 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 03:12:44 ] 別に間違いというほどのことじゃないだろ どのみち今の段階じゃバグ多すぎでとても数値計算に使う気になれナス
200 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 03:28:26 ] まぁそれでも将来的にはFortran並みの実装を期待
201 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 03:33:08 ] a[:] = b[:] * 2 + c[:]; とか。
202 名前:デフォルトの名無しさん mailto:sage [2007/07/07(土) 04:04:18 ] 標準関数にmatmulも入って欲しいな 配列演算じゃないけど個人的には**も使いたい
203 名前:デフォルトの名無しさん mailto:sage [2007/07/08(日) 04:20:42 ] そういえばLatex→Fortranと入ってきた俺はC言語にいたって pow関数を使わなきゃいけないと知ったときやたら面倒だなと思った
204 名前:デフォルトの名無しさん mailto:sage [2007/07/20(金) 09:36:57 ] powってコストが高そうなイメージがあるんで掛け算で書いてたなあ
205 名前:デフォルトの名無しさん [2007/08/10(金) 01:19:29 ] age!()
206 名前:デフォルトの名無しさん mailto:sage [2007/08/12(日) 03:02:37 ] こっちはずいぶん過疎ってるなぁ・・・・