07/08/07 05:20:19
URLリンク(d.hatena.ne.jp)
うむむやはりこれはバグでしたか...
もやもやがすっきりしました
ありがとう賢い人たち
201:デフォルトの名無しさん
07/08/07 05:47:18
って、あげてしまった
(ご迷惑おかけしてすいません)
202:デフォルトの名無しさん
07/08/07 05:48:21
あげたら迷惑なの?
203:デフォルトの名無しさん
07/08/07 08:00:22
>>200-201
D言語をいじくる夏休みとはうらやましいかぎりだぞ
204:デフォルトの名無しさん
07/08/07 08:30:08
gdcはどうなってるんだい?
205:デフォルトの名無しさん
07/08/07 09:42:02
DFL 0.9.6 リリース
206:デフォルトの名無しさん
07/08/07 12:18:16
>>205
ちょっとコントロールが追加されたくらいかな
207:デフォルトの名無しさん
07/08/07 22:30:28
コンパイラにコンテンツアシストの支援機能を早く組み込め。
そしたらあっという間に普及するから。
208:デフォルトの名無しさん
07/08/07 22:36:51
こんな言語仕様が不安定な言語は普及しないよ。
D が流行るのは言語仕様が安定してからでいい。
209:デフォルトの名無しさん
07/08/08 02:16:30
つまりヲルターが死ぬまで流行ることはないということか
210:デフォルトの名無しさん
07/08/08 02:28:35
つまり、Rubyは、Matzが死ぬまで流行ることはないのだろうか
211:デフォルトの名無しさん
07/08/08 02:41:25
デリゲートリテラルの引数の型を推論できるようにならんかなあ。
void func(int delegate(int) dg);
func( (i) { return i * 2; } );
とか、願わくば
func(i => i * 2);
とか書きたい。
212:デフォルトの名無しさん
07/08/08 05:41:35
後のほうの記法がきもい
213:デフォルトの名無しさん
07/08/08 07:00:49
素人乙
214:デフォルトの名無しさん
07/08/08 08:36:05
ラムダ記法はほしい
215:デフォルトの名無しさん
07/08/08 08:47:55
>>211
現状の戻り値推論だけなら、要求されているdelegate型と
生成したdelegate型が異なれば型エラー出るけど、
なんかその推論をやっちゃうとエラーの元になりそうだな。
むしろ仮引数名の方を省略したい。
(int){return @int * 2;}
みたいな。
普通の関数でも省略できるとなおよし。
216:デフォルトの名無しさん
07/08/08 12:05:43
今のままでいいよ
下手に省略すると、人間もコードから内容を推論しなきゃならなくなるからめんどい
217:デフォルトの名無しさん
07/08/08 12:31:20
DとObjective-Cを混ぜてみたいな。スクリプト言語より強力になりそうな気がしてね。
218:デフォルトの名無しさん
07/08/08 17:10:17
Objective-C++は失敗作だったけどな
219:デフォルトの名無しさん
07/08/08 18:54:09
開発環境>>ライブラリ>>>>>言語仕様
って感じで、D言語は3.0になったとしてもはやらなそう
220:デフォルトの名無しさん
07/08/08 20:14:16
ヲルタータンが「言語仕様はこれにて平定!」って言わない限り無理ぽ
221:デフォルトの名無しさん
07/08/08 23:38:42
これにて閉廷!
222:デフォルトの名無しさん
07/08/08 23:59:34
これにて閉経!
223:デフォルトの名無しさん
07/08/09 00:00:11
はたして、進化をやめたDに使う価値はあるのだろうか。
224:デフォルトの名無しさん
07/08/09 00:05:11
せめて処理系がほぼ下位互換でないと使う気にはなれんね
225:デフォルトの名無しさん
07/08/09 03:31:04
>>223
価値ないな…
D言語は変り続けることが美しいのさ…
226:デフォルトの名無しさん
07/08/09 04:00:04
罷り間違ってD言語が普及してしまったら
下位互換性を重要視するようになると思うよ
227:デフォルトの名無しさん
07/08/09 04:00:49
それは困る
228:デフォルトの名無しさん
07/08/09 04:02:15
そんときゃE言語作ればいいじゃない
229:デフォルトの名無しさん
07/08/09 04:03:32
それはいい言語になりそうだな。
230:デフォルトの名無しさん
07/08/09 04:05:05
>>229
231:デフォルトの名無しさん
07/08/09 04:24:35
>>230は尊敬しているようです
232:デフォルトの名無しさん
07/08/09 04:31:07
E言語はもうあるけどな
233:デフォルトの名無しさん
07/08/09 04:34:54
かなりのものは既に使われてるよな。
何か昔一覧を載せてるサイト(不正確に見えたが)があったけど、見つからない。
234:デフォルトの名無しさん
07/08/09 07:05:25
scope File("hoge.txt") s;
なんていう表現があったら時々便利そうだなあ
いらんけど
235:デフォルトの名無しさん
07/08/09 13:15:47
>233
URLリンク(www.kmonos.net)
これか?
236:デフォルトの名無しさん
07/08/09 13:49:49
>>234
scope s = File("hoge.txt");
でいいと思うよ。
237:デフォルトの名無しさん
07/08/10 18:18:19
更新マダー
238:デフォルトの名無しさん
07/08/10 18:22:54
こっちのスレは1年以上待って、もっと待つつもりで、実装はさらに待つつもりなのにおまいらときたら
スレリンク(tech板)
239:デフォルトの名無しさん
07/08/10 23:08:43
>>238
なんだか誠に申し訳ないw
でもDはDで……仕様確定マダー?
そいやDの仕様もだいぶ増えてきた感があるけど、
まだコンパイラの実装はC++ほど大変でもないんかな?
だとしたらどっかに決定的な違いがあるんだろーか。
教えてC++の偉い人ー。
240:デフォルトの名無しさん
07/08/10 23:14:38
ウォルタたんがDの理念の一つに掲げているのに
「処理系の作りやすさ」があるから、そうなんだと思うよ。知らないけど。
241:デフォルトの名無しさん
07/08/11 02:22:03
だれかDコンパイラを自分で作ってる人とかいないのかな
242:デフォルトの名無しさん
07/08/11 02:25:12
少し前にd.D.announceに自分で作ってみたとかいう人がいたような
243:デフォルトの名無しさん
07/08/11 15:01:01
>>227
なんかわろたw
244:デフォルトの名無しさん
07/08/11 17:28:29
>>238
もうD言語使えよと言いたくなる場面ばっかりでわろた
245:デフォルトの名無しさん
07/08/11 18:00:30
DもC++0xも永遠に完成しない
246:デフォルトの名無しさん
07/08/11 18:05:45
C++ユーザがもっとDに流れてくれたらいいのに
似たような言語に人的資源が分散してるのがもったいない
247:デフォルトの名無しさん
07/08/11 18:09:41
やはりここは「ぼくらの」形式で間引きだな
248:デフォルトの名無しさん
07/08/11 18:14:44
C++用のライブラリ作ってるけど、
Dポーティングを念頭に書き換え始めてる
というかDで類似の仕様設計を書き始めてる
でも.NET用のポーティングもありかなと思い始めたり
D#マダー
249:デフォルトの名無しさん
07/08/11 18:36:03
普及するしないの分かれ目は
もはや言語がどうこうってところじゃなくなってるんだけどね
250:デフォルトの名無しさん
07/08/11 18:39:05
ちゃんと標準がTangoに置き換わるまで実質ライブラリさえ作れないような状況だろ。
今作ってもどうせ作り直しになるし。
251:デフォルトの名無しさん
07/08/11 18:54:19
本当に完全にTangoに置き換わるのなら、もうTangoでライブラリ作ればいいだけの話のような。
……本当に標準がTangoに置き換わるって信じてもいいのか?
252:デフォルトの名無しさん
07/08/11 19:01:02
>>251
それが信じられないから困る
phobosがダメなところとTangoの良いところってどんなのがある?
phobosはダメだダメだと聞くがあまり具体的には出てこなくて
まずは文字コード周りかな
253:デフォルトの名無しさん
07/08/11 19:07:14
みんなエディタなに使ってるの?
254:デフォルトの名無しさん
07/08/11 19:28:40
個人的には入出力関係はTangoの方が好きかなぁ
コンテナ(コレクション)についてもTangoがほしいね
あと、ゆくゆくはTangoでXMLもいじれるようになりそう
255:デフォルトの名無しさん
07/08/11 19:31:31
ようやくTango1.0が出そうかなっていうときにもうD2.0だもんなぁ・・・・
256:デフォルトの名無しさん
07/08/11 19:47:39
D2.0ってなにそれはおいしいの?
と思う俺とForeachRangeStatementが2.0だけってことはそろそろ対応お願いしますという
Walterタンの無言の意思表示なのではと思う俺と…
257:デフォルトの名無しさん
07/08/11 21:09:52
もうv1はバグフィックスだけだろ。
美味しい機能《えさ》はv2にしか提供されない。
258:デフォルトの名無しさん
07/08/11 21:52:10
そもそもTangoが標準になるって発言元はどこなんだぜ?
259:デフォルトの名無しさん
07/08/11 22:17:02
>>258
Tango製作陣からじゃないの
260:デフォルトの名無しさん
07/08/11 23:43:00
まぁTangoのほうがモノが良いなら自然に置き換わっていくんじゃね?
261:デフォルトの名無しさん
07/08/12 00:04:50
どっちかが完全に上位互換ならうれしいんだけどね。
混在できたっけ?
262:デフォルトの名無しさん
07/08/12 00:23:12
>>261
無理じゃなかったっけ。前に似た話出てた気がする。
もともと置換を目的に作られてるしなあ。
つか本当に>>255に同意。
なんでここで互換性ないバージョンとか出して既存ライブラリぶっちぎれるのかと。
Phobosお話になんねー、みたいな声はウォルたんに届いてないんだろうか。
263:デフォルトの名無しさん
07/08/12 00:51:04
ウォルタ「いや、他にやりたいことあるし…」
264:デフォルトの名無しさん
07/08/12 01:17:57
ウォルタ「ライブラリのためにDを止めたくないのくらいわかってくれるだろ」
265:デフォルトの名無しさん
07/08/12 01:29:21
ウォルタ「ライブラリが追随すればいいだろwwwww更新おせーんだよwwww」
266:デフォルトの名無しさん
07/08/12 01:41:46
ウォルタ「俺の勝手だろwwwwwwwwwwef9swccnj3」
267:デフォルトの名無しさん
07/08/12 01:44:39
普遍条件にinvariant()って括弧がいるのはどうにかならんかなあ。
見た目が悪すぐる
268:デフォルトの名無しさん
07/08/12 08:36:17
>>267
気にしすぎじゃね?
>>240あたりの理由で()付じゃないとダメだという可能性は?
269:デフォルトの名無しさん
07/08/12 11:03:23
ウ「本来のあるべき姿を追い求めた結果だから仕方ないだろ」
270:デフォルトの名無しさん
07/08/12 11:19:19
まぁdmd2.0のFinal Const Invariantの導入があるから整合性のために仕方がないよ。
struct{
final {int final_hoge = 0;}
const {int const_hoge = 0;}
invariant{int invariant_hoge = 0;}
}
これでinvariantだけ定数の宣言じゃなくて不変条件になると違和感が漂いすぎるし。
271:デフォルトの名無しさん
07/08/12 12:25:29
unittestにあわせて、ちょっと長いけどinvarianttestとかにしてくれりゃいいのに。
272:デフォルトの名無しさん
07/08/12 19:05:21
ちょっとD触ってみたんだけど試してみたいことがあってサンプルコード探して動かしてみようとしたら動かない、とかデフォ?
メッセージボックスに日本語出力するだけですげー時間かかって泣きそうだったわ
あとみんなは開発環境何使ってるの?
Eclipse+Descentでやってたらソースにエラーの赤線引いてあるけど見た目どこも問題ないしコンパイル通るし動作するしで微妙だった
273:デフォルトの名無しさん
07/08/12 19:11:49
>>272 D2.0系だとサンプルコードってほとんどないんじゃないかな
今公開されてるサンプルコードって大半がD1.0時代のものだと思う(しかも今のD1.0系で動くとも限らない)
少なくとも日本語の文書においては
274:デフォルトの名無しさん
07/08/12 19:22:34
>>272
まだまともなIDEはないから、俺は普通のテキストエディタで書いて、コマンドラインからビルドしとるよ。
275:デフォルトの名無しさん
07/08/12 19:24:11
俺も>>274と同じくコマンドライン(というかバッチファイル作ってダブルクリック)
ポセイドンとかどうなんだろ?
276:デフォルトの名無しさん
07/08/12 19:47:28
>>273
そーなんか
とりあえず1.0系インスコしたんだけどみんな2.0系使ってるの?
2.0系って正式リリースされてないよね?
>>274-275
そーかー
Code::BlocksとPoseidonも使ってみるよ
コード補完がないとソース書いててだるい気がするしね
277:デフォルトの名無しさん
07/08/12 20:00:11
>>276
正式リリースなんて飾り。
278:デフォルトの名無しさん
07/08/12 20:09:37
>>276
バージョンが0.001増えるだけで、大幅な書き直しを余儀なくさせられる言語。それがD
279:デフォルトの名無しさん
07/08/12 20:31:15
バージョンアップしたらHello, woldさえコンパイル通らなくなったときは泣きそうになった
280:デフォルトの名無しさん
07/08/12 20:31:53
書きまつがえた
281:デフォルトの名無しさん
07/08/12 21:54:14
>>276
予約語以外までまともにコード補完できるIDEなんてまだないかと
>>279
これのことかな s/stdout/dout/g
import std.cstream;
void main() {
stdout.writefln("Hello, world!"); // 古いコード
}
歴史は繰り返す(Tango)
Cout(Hello, world!").newline;
282:デフォルトの名無しさん
07/08/12 22:15:35
cout << "Hello, World!" << endl;
とC++みたいに出力できるのを作ったことがあるがマニピュレータ周りでモチベーションが切れて終了
283:デフォルトの名無しさん
07/08/12 22:24:48
coutなんて飾りです
284:デフォルトの名無しさん
07/08/12 22:46:27
doutとかs(td)outとかじゃないのか
285:デフォルトの名無しさん
07/08/12 23:12:09
>>282
C++のストリームの記法が便利だと思ったことは一度も無いな
286:デフォルトの名無しさん
07/08/12 23:28:32
つかC++形式の利点って何なの?
たぶんCのprintfが非型安全だから作られたんだと思うんだが、Dだと型安全な可変個引数関数が作れるわけで。
287:デフォルトの名無しさん
07/08/13 00:18:06
型安全、拡張可能、フォーマット文字列の解析が不要ってとこか
その代償として、寄せ、桁、精度、基数等の指定が必要な場合の
記述が面倒くさすぎ
ぶっちゃけ拡張可能性という面でもstreambufが継承可能であることが
重要で、入出力演算子なんてただのオモチャだと思ってる
288:デフォルトの名無しさん
07/08/13 00:32:35
tangoの方間違ってたらすまん
phobosのwriteflnの方がピンと来るのは俺だけ?
tangoのはどうなんだこれ
CoutとStdoutの使い分けとか必要なのか?
string hoge = "hoge", HOGE = "HOGE";
int a = 10, b = 20;
//phobos
writefln(hoge, a, "[%s%d]", HOGE, b);
//tango
Cout(hoge)(a)("[")(HOGE)(b)("]").newline;
Stdout.formatln("{}{}[{}{}]", hoge, a, HOGE, b);
289:デフォルトの名無しさん
07/08/13 05:32:21
Coutキタナッ
290:デフォルトの名無しさん
07/08/13 06:20:23
tx好きー。
291:デフォルトの名無しさん
07/08/13 06:44:43
Code:Blocks使ってみた
入力補完させよーとするとC++かなんかの予約語を補完してくださった
Poseidon使ってみた
日本語表示もできるし予約語の補完もできるし自分で書いたメソッドの入力補完もできるっぽい ちょっと幸せ
でもエディタの挙動とか配色がキモい たぶん変更できるんだろうけどまだあんまし触ってない
292:デフォルトの名無しさん
07/08/13 07:24:56
writefln で十分だな。
293:デフォルトの名無しさん
07/08/13 08:07:31
printfで十分だ
294:デフォルトの名無しさん
07/08/13 08:33:23
うむ
C++ ライクな入出力ストリーム表記はどうにも好きになれん
295:デフォルトの名無しさん
07/08/13 09:13:18
型安全であることと、色んなもんに出力できるという点は評価できるが、
printf ライクにそれを行うことも可能なわけで。
296:デフォルトの名無しさん
07/08/13 15:42:56
>>288
tangoはこれならstd::coutのほうがましだな
297:デフォルトの名無しさん
07/08/13 18:23:02
正直、これ位の簡易な実装で俺は良いんだけどなぁ。
void main(){
println(2,' ',3,' ',4);
}
static import std.string,std.stdio;
alias std.string.toString toString;
string toString(string x){return x;}
string toString(Object o){return o.toString;}
//構造体とか配列とか連想配列とかも同じノリで定義
void println(T...)(T x){
foreach(v;x){
string r = toString(v);
std.stdio.fwrite(r.ptr,1,r.length,std.stdio.stdout);
}
std.stdio.putc('\n',std.stdio.stdout);
}
298:デフォルトの名無しさん
07/08/13 18:26:37
結局型安全にした printf ライクなものが一番だよね。
299:デフォルトの名無しさん
07/08/13 19:43:44
writeflnに慣れすぎて手放せなくなってる
300:デフォルトの名無しさん
07/08/13 21:48:15
誰かD1.0を擬人化してみてくれ
301:デフォルトの名無しさん
07/08/13 21:52:16
>>300
スレリンク(tech板)
302:デフォルトの名無しさん
07/08/13 22:08:16
>>297
それでprintf("%08X", n);
とかはどうやりますか?
303:デフォルトの名無しさん
07/08/14 00:20:21
>>300
1.0限定かよ