- 1 名前:Win64をやりたい場合はMSVCwo [2013/01/21(月) 12:39:54.40 ]
- プログラミング言語 D (D Programming Language) について語るスレッドです。
■本家 dlang.org/ - 公式(英語) www.kmonos.net/alang/d/ - 公式の和訳 d.puremagic.com/issues/ - D言語バグ報告 https://github.com/D-Programming-Language - D言語開発リポジトリ ■Wiki dusers.dip.jp/ - D言語友の会(日本語フォーラムあり) prowiki.org/wiki4d/ - Wiki4D(公認Wiki) ■前スレ D言語 Part30 toro.2ch.net/test/read.cgi/tech/1343660743/ ■過去スレ、関連スレ makimo.to:8000/cgi-bin/search/search.cgi?q=D%8C%BE%8C%EA&sf=2&all=on&view=table&shw=5000
- 2 名前:Win64ビルドをやりたい場合はMSVCをインストールしておくこと mailto:sage [2013/01/21(月) 12:41:38.26 ]
- ■IDE
www.dsource.org/projects/visuald - Visual D(Visual Studioプラグイン) code.google.com/a/eclipselabs.org/p/ddt/ - DDT(Eclipseプラグイン) mono-d.alexanderbothe.com/ - Mono-D (MonoDevelop プラグイン) ■ライブラリ www.dsource.org/projects/dwt - DWT(GUIライブラリ) www.dsource.org/projects/gtkd - GtkD(GUIライブラリ) https://github.com/Rayerd/dfl - DFL(GUIライブラリ・非公式最新版) www.dsource.org/projects/derelict - Derelict(SDL/OpenGLなどのポーティング) www.ku6.jp/keyword6/1.html - 傾き指向プログラミング(SDLなどのポーティング) ■D言語で作られたゲーム www.nicovideo.jp/mylist/4453698 - D言語で作られた芝ゲー niconico動画 www.asahi-net.or.jp/~cs8k-cyu/ - ABA Games
- 3 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 15:17:29.09 ]
- 新スレ記念にマジレスすると
Qt とか Python とか知ってしまうと D いらないんだよね
- 4 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 16:59:54.30 ]
- dusers.dip.jp/ - D言語友の会(日本語フォーラムあり)
403
- 5 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 17:18:13.62 ]
- ひょっとしたら復活するかもしれないので一応そのままにしておいた
が、そろそろ一ヶ月たつから見込みは低い 避難所がほしいな
- 6 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 17:34:27.03 ]
- dmd.exe -c -inline -O -release -w -version=Unicode -version=Windows7 -version=WondersBuild -ofwonders\gdiplus.obj wonders\gdiplus.d
wonders\gdiplus.d(1147): Warning: min property is deprecated, use min_normal instead wonders\gdiplus.d(6005): Error: class wonders.gdiplus.CachedBitmap identity assignment operator overload is illegal
- 7 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 18:46:05.48 ]
- core.sys.windows.windows 定義の数値型は64bitに対応できてないね
もうバグ報告されてるかもしれないけど 英語書けないので誰かよろしく…
- 8 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 20:12:47.72 ]
- LONG_PTRとかは対応してるけど
WPARAMとかLPARAMとかLRESULTがuintとかint決め打ちなのが原因みたい
- 9 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 21:29:01.16 ]
- やっぱりC/C++のintとかlongのサイズの型の定義モジュールがいるんだって
- 10 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 21:56:12.97 ]
- cintとかcfloatとかcdouble…
あれ?
- 11 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 22:09:45.22 ]
- まずcintを定義するために条件分岐が必要で、
次にDWORDみたいなのをcintを使って定義するために条件分岐が必要で…
- 12 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 22:10:58.37 ]
- 別名定義と条件コンパイルで何とかしてくれという方針では
- 13 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 22:27:45.07 ]
- version(Win64) { }
- 14 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 22:34:29.65 ]
- (size_tじゃ)いかんのか?
- 15 名前:デフォルトの名無しさん mailto:sage [2013/01/21(月) 23:36:13.58 ]
- com関連と64bitが整備されれば
Windows用のGUIアプリケーション作るときに視野に入ってくるんだけどな 手が届きそうなのに届かないw
- 16 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 12:43:45.25 ]
- 関数の引数に構造体の代わりに alias thisした型を入れたら暗黙的に型変換してくれないかなぁ・・・
opAssignでいけるかと思ったらそんなことなかった
- 17 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 13:19:45.67 ]
- いや無理だろ
alias this以外にもメンバあったら死ぬじゃん
- 18 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 17:09:08.13 ]
- bgzlrks
- 19 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 20:23:01.64 ]
- なげーよ
- 20 名前:デフォルトの名無しさん mailto:sage [2013/01/23(水) 20:38:05.86 ]
- >>18
ロシア大使館に言えよ
- 21 名前:デフォルトの名無しさん mailto:sage [2013/01/24(木) 12:06:21.22 ]
- 友の会 dusers.dip.jp
ソース貼付サイト(2.061)dpaste.dzfl.pl/ 年末につながらなくなっていたが両方とも復活した
- 22 名前:デフォルトの名無しさん mailto:sage [2013/01/25(金) 03:28:31.95 ]
- ありがとうございます!
- 23 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 17:30:10.97 ]
- DDTは最新のeclipseに対応していないんだ
- 24 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 17:31:29.19 ]
- DDTステロ!
- 25 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 17:38:17.43 ]
- DMDscriptってコンパイル通し作業行われてないんですか?
- 26 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 19:44:56.20 ]
- ウォルター様は通し作業は有志が動作確認できるようにとわざわざチェックしないでリリースして下さります
- 27 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 20:27:51.33 ]
- ラムダ式の時だけじゃなくてもうすべての場所でreturn省略できたらいいのに
- 28 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 20:34:12.14 ]
- 関数型言語とかはそうだな
でもあれ手続き型言語でやるとバグの温床だからな
- 29 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 20:37:26.34 ]
- ハゲの温床に見えた俺
そろそろ寝るか
- 30 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 20:40:59.94 ]
- return を廃止してその代わりに
関数の頭に fn みたいなキーワードを必須にするのなら 賛成してやってもいい
- 31 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:00:12.74 ]
- なにそのjavascriptの派生言語みたいなそれ やめろよ
- 32 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:07:14.30 ]
- それ何てrust
- 33 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:16:25.75 ]
- 一文なら、という条件付きならいいんじゃね
- 34 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:20:10.90 ]
- >>28
詳しく知りたい なんかまずいの?
- 35 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:26:13.10 ]
- return忘れても
別の値が返ってとりあえず動いてしまうとか
- 36 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 21:40:11.17 ]
- 狙ってなくても戻り値を返してしまうからな
特に関数定義の頭で戻り値の型を明示しなくて良い場合(動的型や型推論付き)は さらにややこしくなる、まあ組めなくはないけどね
- 37 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 22:58:43.29 ]
- そんなこと言ってたらOCamlとかバグの塊でとてもじゃないけど使えないみたいな状況になってるはずなんだけど
- 38 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:00:33.57 ]
- ウォルターの人生そのものであるD言語を
そう簡単に仕様変更するわけがないだろ!!
- 39 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:02:33.16 ]
- OCaml は型チェックが厳しいから。
- 40 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:15:46.04 ]
- 少なくとも表向きは型のチェックなんてないように思うが
それでも型チェックがうるさいと判断するのかね?
- 41 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:19:56.11 ]
- OCamlは整数の加算と小数の加算で演算子が変わるほど厳しいじゃん・・・
- 42 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:22:29.97 ]
- 関数が常に一文なら問題ないんじゃね
必ず戻り値を何か書かないといけないわけで
- 43 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:30:01.83 ]
- 関数定義をラムダ式を代入でもいけるようにしてほしいわ・・・
- 44 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:40:12.59 ]
- enum func = (int a)=>a;
- 45 名前:デフォルトの名無しさん mailto:sage [2013/01/26(土) 23:40:14.40 ]
- enum f = (int n){ return n+1; }; // 旧
enum f = (int n) => n+1; // lambda 戻り値型の省略なんてしなくていいからreturn省略したい enum f = int(int n){ n+1; }; これでいいじゃない・・
- 46 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 00:11:52.28 ]
- それならセミコロンがないほうがいいな
最後の文にセミコロンが無い時に限りreturnの代わりになる、でどうだ enum f = int(int n){ n+1 };
- 47 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 01:24:29.69 ]
- ラムダ式だけは何か趣味機能な気がする
これあると便利な事ってどういう分野なんだ
- 48 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 01:50:29.88 ]
- ラムダ式便利すぎるだろう
むしろ使わない方がおかしい
- 49 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 02:07:51.61 ]
- サッパリ想像できない
具体例がほしい
- 50 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 02:47:44.46 ]
- レンジとかアルゴリズム使わない人にはわからないかもね
- 51 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 04:46:41.37 ]
- 普通のdelegateリテラルで十分な気がするんだけど
- 52 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 07:14:51.87 ]
- =>の糖衣構文はアルゴリズムに渡す時に素敵すぎるね
- 53 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 07:54:38.16 ]
- 記述が短くなるというのは想像以上にいい
これは実際に使う場面に行き当たらないと実感するの無理かも
- 54 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 07:56:45.25 ]
- あれだ
推論可能な場面でいちいちautoでもvarでもなく 型名を書かなきゃいけないJavaとかに絶望するのといっしょの感覚かも
- 55 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 09:24:01.61 ]
- どうせ引数の型あんまり省略できないし、delegateとはreturnの有無の差くらいしか無いと思うんだけどなあ・・
- 56 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 09:31:30.61 ]
- 便利かどうかなんて主観でしかないんだから互いに「お前がそう思うんならそうなんだろうお前ん中ではな」で終わる話
- 57 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 11:49:13.97 ]
- 平行線だったのは結果論だけどなー。
その主観が交わる可能性があった以上、コピペでまとめちゃうのはいくないっすよ
- 58 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 12:00:05.55 ]
- ( {...} ) <- こういうのがイヤ
- 59 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 12:01:17.46 ]
- 俺は好き
- 60 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 12:48:16.97 ]
- >>58
ブレース消えるのいいよね
- 61 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 13:17:04.96 ]
- 我・乱無駄の名において命ず・消え去れ無礼衆!
- 62 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 13:26:12.22 ]
- // delegateが無い場合
hoge(new class Func : IFunc { void func(Parameter p1, Parameter p2) {return p1 == ps;} }); hoge(new class Func : IFunc { void func(Parameter p1, Parameter p2) {return p1 != ps;} }); hoge(new class Func : IFunc { void func(Parameter p1, Parameter p2) {return p1 < ps;} }); // delegateが使える場合 hoge((Parameter p1, Parameter p2) {return p1 == ps;}); hoge((Parameter p1, Parameter p2) {return p1 != ps;}); hoge((Parameter p1, Parameter p2) {return p1 < ps;}); // ラムダ式が使える場合 hoge((p1, p2) => p1 == ps); hoge((p1, p2) => p1 != ps); hoge((p1, p2) => p1 < ps); >>55 俺は大差があると思う
- 63 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 13:57:07.48 ]
- ヒント:ラムダで引数の型が省略できる場合には関数リテラルでも同じ書き方ができる
- 64 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 13:59:44.79 ]
- dlang.org/deprecate.html
今までdeprecated で生き延びていた機能の多くが 2.061で抹殺されていることに気づいた
- 65 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 14:27:09.51 ]
- 結局のところdelegateあるならラムダいらないんじゃね?と言う話
別にあって都合が悪いこともないから消せ!とは言わんけどw
- 66 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 14:50:42.78 ]
- ラムダは構文糖だからいらないと言われても困る
autoが消滅して型名を書けと言われたりscope(exit)が消滅してtry-finallyを書けと言われたりしたら俺はDを投げる
- 67 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 14:53:25.86 ]
- ラムダ要らない派とか今まで一人も出てきてないと思うけど
- 68 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 14:57:55.37 ]
- >>61
ダークフレイムマスター
- 69 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 19:38:44.30 ]
- complex型がいつ消えるかどきどきだわ・・・
- 70 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 19:59:21.59 ]
- 消えたらC99の複素数関数をABI互換性を保って呼ぶ方法が無くなるのか?
- 71 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 20:00:11.78 ]
- std.complexじゃダメなの?
- 72 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 20:06:07.70 ]
- C99のcomplexはFPUだかSSEだかのレジスタ渡しだろ?
ライブラリ定義はstructに詰めた状態だからスタック渡しになってしまわね?
- 73 名前:デフォルトの名無しさん mailto:sage [2013/01/27(日) 22:52:36.94 ]
- ライブラリ内でアセンブラで書いてあれば別にいいんじゃないの
あるいは何らかの最適化に通るのでもいいわけで ABI互換性は困りそうだが
- 74 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 06:15:55.98 ]
- D言語って、
int[100] a, b; a[] += b[]; で勝手にSIMD演算とかいうのやってくれるんですか?
- 75 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 07:13:31.71 ]
- >>74
www.kmonos.net/alang/d/simd.html 頑張ってくれる可能性はあるけどわりと限界もある、みたいな感じ
- 76 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 11:06:58.13 ]
- ターゲット環境を明示してなければ勝手にそういうコードを吐くわけ無い
環境を特定するなら素直に core.simdで定義されている配列もどきを使うべし
- 77 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 14:26:03.01 ]
- classのコンストラクタで定義した変数をメンバーにしちゃえる的な機能がほしいなぁ
多分害悪の元なんだろうけど class hoge { this() { int a = 0 as public; } } 見たいにしたらhoge.aが使えるみたいなね! thisが一個のとき限定でいいからさぁ・・・
- 78 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 19:16:36.49 ]
- >>77
どんな意図の機能? 頑張れば既存の機能でやりたいことが解決できるかも
- 79 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 19:44:42.31 ]
- 黒魔術ツールopDispatchがあるからなあ
ただコンストラクタで書くならメンバでいいだろという気がするが
- 80 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 19:52:33.02 ]
- 現在のスコープから参照できるすべてのシンボルを列挙する__traitsが欲しい
あとそのシンボルが変数なのかモジュールなのかクラスなのか構造体なのか判別するのもついでに欲しい
- 81 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 19:59:59.78 ]
- C++の特殊化でなら省力のために欲しいかな
mixin無ぇーし
- 82 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 20:02:09.25 ]
- 顧客が本当に必要だったもの:賢いIDE
- 83 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 20:17:53.73 ]
- IDEとか重いだけだよ!
- 84 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 21:31:09.49 ]
- DDTがeclipse4.2に入らないのが痛い
- 85 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 23:29:27.58 ]
- 軽いIDEには需要があるのか
- 86 名前:デフォルトの名無しさん mailto:sage [2013/01/28(月) 23:48:53.99 ]
- Sublime Textがそんな感じじゃない?
プロジェクト機能あるしD対応してるし
- 87 名前:デフォルトの名無しさん mailto:sage [2013/01/29(火) 04:08:55.24 ]
- 言語仕様の追加まで対応出来る賢いIDEをだな
- 88 名前:デフォルトの名無しさん mailto:sage [2013/01/29(火) 12:34:31.13 ]
- IDEの触手の一端がウォルたんの脳みそに取り付いているだと…!?
- 89 名前:デフォルトの名無しさん mailto:sage [2013/01/29(火) 19:19:11.01 ]
- IDE(CUI)
- 90 名前:デフォルトの名無しさん mailto:sage [2013/01/29(火) 19:25:51.70 ]
- Integrated Drive Electronics
Integrated Development Environment エンビロンメント?
- 91 名前:片山博文MZパンク ◆0lBZNi.Q7evd [2013/01/29(火) 23:58:06.70 ]
- >>90
エンヴァイロンメント。 電子辞書を買いましょうね。
- 92 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 00:21:20.93 ]
- マクロまだー?
- 93 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 00:21:34.89 ]
- カタカナ表記につっかかるのはナンセンスだと思うけど
- 94 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 00:34:25.28 ]
- カタカナ表記としてもエンヴァイロンメント、エンバイロンメント以外に存在しない
- 95 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 01:31:06.21 ]
- ディーゲンゴも大五郎も大して変わらんしな
- 96 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 04:13:06.10 ]
- インバイロンメントさんが泣いてる
- 97 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 04:32:45.97 ]
- わーにんぐ・わーにんぐ
- 98 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 12:23:27.28 ]
- エンベロープメント
モーリメメント ヤックデカルチュアメント
- 99 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 19:39:48.11 ]
- DPasteのコンパイラが止まってるじゃないかクソッタレー!
import std.stdio; void main() { // ポインタの配列 int i = 42; int*[1] src = [&i]; // スライスの代入 int*[1] dest = src[]; // srcとdestの内容が違う! (2.061以降) writeln(src, " == ", dest); } これが2.061の破壊的変更だったら欣喜雀躍するんだが…
- 100 名前:デフォルトの名無しさん mailto:sage [2013/01/30(水) 20:08:25.15 ]
- >>99
githubの最新では直っているっぽい
|

|