[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 2chのread.cgiへ]
Update time : 08/05 14:43 / Filesize : 200 KB / Number-of Response : 965
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

D言語 Part18



1 名前:デフォルトの名無しさん [2008/04/14(月) 15:16:22 ]
プログラミング言語 D (D Programming Language) について語るスレッドです。
過去スレは >>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フロントエンド)

■参考URL
ttp://f17.aaa.livedoor.jp/~labamba/ (D言語研究)
ttp://f17.aaa.livedoor.jp/~labamba/?D%B8%C0%B8%ECBOF (D言語BOF)
ttp://dsource.org/ (dsource)
ttp://tinyurl.com/3da5oa (C/C++に疲れた人のD言語)
ttp://www.kmonos.net/alang/wnd/ (わかったつもりになるD言語)
ttp://shinh.skr.jp/d/ (SDL, SDL_*, OpenGL, GLU, glutのポーティングとか)
ttp://shoo.s20.xrea.com/shoo/programing (D言語とTangoの入門講座)
ttp://www.nicovideo.jp/mylist/4453698 (D言語で作られた芝ゲー niconico動画)
ttp://www.asahi-net.or.jp/~cs8k-cyu/ (ABA Games)

■ IDE
ttp://dronten.googlepages.com/dscite (DSciTE)
ttp://forums.codeblocks.org/index.php?board=20.0 (Code::Blocks)
ttp://www.dprogramming.com/entice.php (Entice Designer)
ttp://www.dsource.org/projects/descent (Descent)
ttp://www.dsource.org/projects/poseidon (Poseidon)

313 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 21:08:24 ]
>>309
それはあくまで「趣味の範囲」での大規模ですね、わかります

314 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:10:17 ]
>>313
GUIです。

315 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 22:22:10 ]
GUI使ってれば大規模?


316 名前:デフォルトの名無しさん [2008/05/26(月) 23:20:17 ]
ひょっとすると、GUIフレームワークを開発中なのでは?

317 名前:デフォルトの名無しさん mailto:sage [2008/05/26(月) 23:54:12 ]
>>316・・・それはないだろう
>>314普通のGUIアプリならDでもいいけど
Dの利点は優れた構造化能力と何よりフロンティアであることです
実務を楽にこなしたいならC#の方がいいよ

318 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 10:37:03 ]
>>309
答えるのが難しい質問だね。
言語仕様自体は、コード解釈で微妙な誤解が起きたりしないよう
注意が払われてるなど、大規模開発を意識したものになってる。
しかし現状では、処理系やライブラリの熟成度に不安がある。


319 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 12:08:48 ]
------ test.d ------
class T1 {
  public int getint() { return 1; }
}

------ main.d ------
static import test;

class T2 : test.T1 {
  public override int getint() {
    return test.T1.getint();       // 駄目
    //return typeof(super).getint();  // こう書きたいけどこれも駄目
  }
}

int main() {
  auto t = new T2;
  return t.getint();
}


dmd.2.014で上のように書くとスタックオーバーフローになるのですが
dmd.2.014と私のどちらがおかしいのでしょうか?
私がおかしい場合、どのように書くのが正解なのでしょうか?

320 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 15:11:58 ]
public override int getint()
{
  return super.getint;
}
これじゃ駄目な理由は何?

321 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:06:32 ]
>>320
いえ、それで結構です。super.で呼べるのですね。
それを知らなくて return super(); とかいろいろやってました。
ありがとうございました。



322 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 16:39:58 ]
TinyXMLはObjectのメンバを再定義してる部分が多くて
全部hiddenなんとかのエラーが出てしまう
alias Object.print print;
public void print() {}
て全部やらないのいけないよね?
めんどいけどしょうがないのかな

323 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:51:13 ]
D言語とC++0xって闘ったらどっちが強いんですか!?

324 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 20:57:58 ]
純粋な疑問なんだけどプログラム言語の世界で「○○言語最強」とか言ってる連中って何がしたいの?
「強さ」の基準からしてまったくわからんのだけど。

325 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:05:12 ]
作者と信者がガチの喧嘩をしたらどっちが勝つかという問題だろう。
Dは少数派だから厳しいだろうな。

326 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 21:13:40 ]
D教祖の筋肉とチーマObjective-C信者の飛び道具がマジノ攻防戦?

327 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:24:34 ]
でもDは大砲も跳ね返すんだぜ?
www.kmonos.net/alang/d/2.0/dbc.html

328 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 22:51:58 ]
すげぇwwwwwwwwwwwwwwwwwww
D言語使わせてくれwwwwwwwwwwwwwwwwww

329 名前:デフォルトの名無しさん mailto:sage [2008/05/27(火) 23:02:19 ]
D事態が弾を内包しているという罠・・・

330 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 00:16:40 ]
その弾丸と親和性が高いのではねかえせるのですね。わかります。

331 名前:デフォルトの名無しさん [2008/05/28(水) 00:39:32 ]
DでBasicっぽいゲームエンジン作ろうかと思ってるのだがやめておいたほうがいいだろうか・・・



332 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 00:45:54 ]
D言語で最新のDirectX SDKを叩ける方法の方が…

333 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 02:15:29 ]
>>331
いや、やってみてから挫折しろよ

334 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 05:49:30 ]
>>332
最新に完全対応かどうかはわからないけど
DSourceにあるBindingsで叩ける
最新SDKとリンクさせてるけど、いまのところ問題ない。

335 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 06:27:21 ]
>>324
何がしたいっていうか、そういう遊びだろう。
勝敗の決まらない、操作そのものを楽しみ続ける格闘ゲームみたいなものだから、
基準がまったく定まらず、お互いにまったく噛み合わないこと自体も
彼らの求める相互排他とか衝突を生み出すいいきっかけなんだよ。

336 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 07:27:03 ]
>>327
なんでD言語のキャラクターはこんなにムカつくんだwww

337 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 08:51:39 ]
>>334
まじ?Bindingsってなんか依存関係でコンパイラがエラーはくんじゃなかった?

338 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 11:11:11 ]
ロゴがある言語って少ないんだからあのロゴキャラ消してもいいような…

339 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 11:20:34 ]
日本以外はサマータイムやってるから理論はいかがなものかと。
ウザカワキャラってことで売り出していこうぜ,

340 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 11:41:16 ]
>>337 そんなのとっくに直ってる

341 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 13:57:47 ]
GDI+ の D言語へのポートってないんですか?
自分でシコシコ作るしかないのかな…



342 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 14:33:41 ]
大規模やらDirectX10やら、やたら勇者がおおいな

343 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 15:44:21 ]
そう言えば日本のサマータイム導入はどうなるんだろう。
他の導入済み都市と比べて夏と冬の日照時間にほとんど差がないから意味がないような。
また政治家の手続き遊びによる金稼ぎが。

344 名前:デフォルトの名無しさん mailto:sage [2008/05/28(水) 20:29:27 ]
毎年、切り替えの日に仕事遅刻するのが目に見えてるからやめてほしい。

345 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 15:41:17 ]
なんの話だよ

346 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 15:58:53 ]
サマータイムの話では。

347 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 21:01:28 ]
DigitalMars のサイトが……

348 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 21:29:54 ]
と思ったら蘇ってた

349 名前:デフォルトの名無しさん mailto:sage [2008/05/29(木) 21:49:18 ]
一瞬だけ変なところ飛んだんだが、何事だったんだろうな

350 名前:デフォルトの名無しさん [2008/05/30(金) 01:11:16 ]
glutを使いたいのですが、リンク時に
Error 42: Symbol Undefined _glutInit
というエラーが出てしまいます
調べてみたところ、おそらくglut32.libが原因のようで、
glut32.libは DIDE with D のものを使うといいとの事ですが、
DIDE with Dのサイトがもう見れなくなっていて困っています。
DIDE with D以外だとどこのglut32.libを使えば動くんでしょうか?
ちなみにimplib -a glut32.lib glut32.dl で作ったものと
yaneSDKに入っているもの、DedicateDのglut32.libを試しても同じエラーが出てしまいました。

それともなにか他の原因があるのでしょうか?
原因がわかりそうな方お願いします。

351 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 01:15:26 ]
>>350
.zipで上げてくれたら誰かやってくれるかもしれんよ



352 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 02:15:14 ]
SDL + opengl opengluなら普通に使えるけどglutは試してないなぁ。

353 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 02:33:11 ]
>>350
DLLがあるなら、implib /s glut32.lib glut32.dllでいいと思うのだが

354 名前:353 mailto:sage [2008/05/30(金) 03:51:53 ]
よく調べたら、extern(Windows)な関数のライブラリだった。
↑は使えない。
まずwww.xmission.com/~nate/glut.htmlからvc++用のバイナリを落としてくる。
それから、glut32.libをcoffimplib.exeでOMFライブラリに変換して、
それを使えば大丈夫なはず。

355 名前:353 mailto:sage [2008/05/30(金) 04:06:26 ]
あと、glutInitの宣言にextern(Windows)がついてないと思われるので、付けるように。

というか、むしろこっちが原因かも。
libファイルがどうこうじゃなくて。
yaneSDKに入っているものでも大丈夫だったし。


356 名前:353 mailto:sage [2008/05/30(金) 04:23:03 ]
>あと、glutInitの宣言にextern(Windows)がついてないと思われるので、付けるように。
extern(C)をextern(Windows)に変えろって意味ね。


357 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 04:37:31 ]
世話焼き萌え。

358 名前:350 mailto:sage [2008/05/30(金) 11:55:05 ]
>>355
extern(Windows)をつけたらできました。
レスくれた方ありがとうございます。
勉強になりました

359 名前:デフォルトの名無しさん mailto:sage [2008/05/30(金) 12:50:34 ]
GLでがりがりやってる方もいるんだねぇ・・・

360 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:29:20 ]
さて、IDEはまだかね?

361 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 01:44:58 ]
っ Descent



362 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 23:05:09 ]
つ Entice Designer

363 名前:デフォルトの名無しさん mailto:sage [2008/06/01(日) 23:07:13 ]
っ SASI


364 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 02:32:17 ]
っ Poseidon

365 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 06:30:29 ]
JDT並みの自動補完がほすい

366 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 08:12:34 ]
つ Descent
・・・より優れているのか?

367 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 08:40:13 ]
Descent はすぐに自動補完がぬるぽで落ちて、自動補完聞かないただのエディタと化してしまうからいまいち。
他はしらん。

368 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 11:37:16 ]
そんな現象なったことないな

369 名前:デフォルトの名無しさん mailto:sage [2008/06/02(月) 13:03:41 ]
昔のVisualStudioはよくそんなことなってたよなw
Descentでなったことはないわ。

370 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 03:28:47 ]
DescentでMake使えるようにならんかなぁ

371 名前:デフォルトの名無しさん mailto:sage [2008/06/03(火) 03:34:26 ]
と思ったらEclipseのBuilderから普通に使えた



372 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 21:37:39 ]
mixin(import("con"));

これ通らないのかよー

373 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 21:42:58 ]
>>372
-J.

374 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 22:12:58 ]
それしてもコンパイルは通ったように見えるけど、実際は何も生成されない。

375 名前:デフォルトの名無しさん mailto:sage [2008/06/04(水) 22:14:13 ]
何も生成されない、というか空文字列として扱われてるみたい。

376 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 08:25:02 ]
>-J.
これがなんかの絵文字かなやんだおれは
修行がたりない

377 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 15:40:40 ]
>:-J.

378 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 20:39:49 ]
|| -J. |
- ノ

379 名前:デフォルトの名無しさん mailto:sage [2008/06/05(木) 21:33:30 ]
||||
-J
o/

380 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 08:02:35 ]
やってることが暇人すぎてわろた

381 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 17:40:20 ]
何か建設的な話題はないのか



382 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:03:30 ]
2010年にD++が出る

383 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:17:42 ]
D#とDavaとDoberonも出るよ

384 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:42:15 ]
DaskellとかDCamlとかDispに期待。

385 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:51:46 ]
DOBOLだな

386 名前:デフォルトの名無しさん mailto:sage [2008/06/06(金) 20:53:36 ]
最近はバグ取れてきた?
そろそろ本格的に使ってみようかと思うんだが(趣味でだけど)
JavaとRubyに慣れた身にはC++は苦痛・・・・・・代替言語が欲しい

387 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 03:58:32 ]
javaに慣れてるならライブラリが薄いこと以外はスーパーセット的に使えるだろ
rubyみたくクラスに機能をインジェクションしようと考えてテンプレートをいじる遊びもできるし

388 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 11:02:13 ]
>>386
バグは普通に使う分にはすでにあまり問題ないレベルであるように感じる。
趣味で追いかける分にはD言語は愉快な言語だと思う。

389 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 15:20:19 ]
struct Matrix(T, int M, int N) {
const Matrix!(typeof(T + U), M, N) opAdd(U)(Matrix!(U, M, N) that);
}

こんな感じでテンプレートの引数として使われてるテンプレート引数って推論できないものかなあ。

390 名前:386 mailto:sage [2008/06/07(土) 15:23:42 ]
>>387-388
ありがと。何よりもまず使ってみる

391 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 16:44:05 ]
質問。

template hoge(int hage) {
 void hogefunc() { ... }
}

void func(int arg) {
 mixin hoge!(arg);
 hogefunc();
}

って、どう展開されるんですか?



392 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 16:47:00 ]
argはコンパイル時定数じゃないからテンプレートに渡すことはできない。

393 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 17:21:15 ]
でもコンパイルとおっちゃうんですよねー・・・。

不定値になるのかな?

394 名前:デフォルトの名無しさん mailto:sage [2008/06/07(土) 17:28:14 ]
バグでしょ。

395 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 07:59:20 ]
CTFEが働いているとかはないのか

396 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 10:29:42 ]
>>391
何故か0が渡されてる
codepad.org/qbKJaxYV

397 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 12:24:22 ]
typedefで初期値を変えても0が渡されてるからint.initですら無いようだねぇ。

398 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 14:35:15 ]
>>395
CTFEにしても、関数はランタイムでも実行できないとだめだから、
コンパイルが通るのがおかしい。

399 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 18:03:26 ]
既出のバグなのかな?
あの大量のリストを全部確認するのはつらいよなあ…
1000近くあるし英語だし…
というかこれも結構重複とかしてるんだろうなぁ…

400 名前:デフォルトの名無しさん mailto:sage [2008/06/08(日) 19:06:25 ]
連想配列をイテレートする便利クラスってなかったっけ?

キーの大きい順にとか、値の小さい順にとかやりたいんだけども。

401 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 00:03:47 ]
しっかりしたライブラリなら、
  dsss build --doc
でドキュメントが生成できるのな。知らなかったぜ。
dsss net install は未だに成功した試しがないんだがw



402 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 08:04:55 ]
dmdとcandydocで作るのと一緒のやつだっけ?
そういえばdmd -doc使ってないなあ
プロファイラとコードカバレッジとユニットテストが
dmdでできるのは重宝しているが

403 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 10:45:14 ]
>>400
foreach (v; aa.keys.sort) {...} とかじゃ不足?


404 名前:403 mailto:sage [2008/06/09(月) 10:48:26 ]
微妙に間違えた。
キーで回すんだから foreach (k; aa.keys.sort) と書かなきゃ。


405 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 14:45:00 ]
値でソートしたり、値が一致したときにキーにフォールバックしたりしたいの。

406 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 16:03:57 ]
>>404
まだ微妙じゃないのか?
foreach (v, k; aa.keys.sort) じゃね?

>>405
>フォールバック
ちくしょう、おいらにゃ意味がわかんねぇ

407 名前:デフォルトの名無しさん mailto:sage [2008/06/09(月) 20:01:16 ]
>>406
書くならこうだろう。
foreach (i, k; aa.keys.sort)

408 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 02:19:56 ]
今無性にimport文でワイルドカード使いたい。Javaみたいに。ニュースグループではそんな無駄な
機能いらねぇよ派が多数だったみたいだけどな。Tango のライブラリとか細かすぎていちいち
書くの面倒になっちゃうよ。DFL みたいに all.d みたいなファイルを用意しておけば、まぁ
似たようなことはできそうなんだけど。

409 名前:デフォルトの名無しさん mailto:sage [2008/06/10(火) 02:45:53 ]
Tangoにもまとめてimportする用のモジュールあるじゃん。

410 名前:408 mailto:sage [2008/06/10(火) 03:40:56 ]
…あ。tango.group なんてあるのね。>>409 のお陰で得した気分だ、ありがとう

411 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 04:09:13 ]
処理速度ってC++より早いのか?



412 名前:デフォルトの名無しさん [2008/06/11(水) 08:37:58 ]
また馬鹿げた質問を
単純ループのベンチマークでもとって比べるか?w

413 名前:デフォルトの名無しさん mailto:sage [2008/06/11(水) 08:49:25 ]
処理速度気にするなら単純なコードでコンパイルして逆汗して比較汁
コンパイラの出来も同時に判る
組み込みやってた知り合いはそれやってたらできたてのコンパイラのバグみつけた







[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<200KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef