D言語 Part24
■ このスレッドは過去ログ倉庫に格納されています
0001デフォルトの名無しさん
2010/01/26(火) 00:06:57■前スレ
http://pc12.2ch.net/test/read.cgi/tech/1253443684/
■本家
ttp://www.digitalmars.com/d/
ttp://www.kmonos.net/alang/d/ (和訳)
■コンパイラ
http://www.digitalmars.com/d/dcompiler.html (DMD, 本家)
http://dgcc.sourceforge.net/ (GDC, gccフロントエンド)
http://www.dsource.org/projects/ldc (LDC, バックエンドにLLVM)
■参考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/candcpp2d2 (C/C++に疲れた人のD言語2.0)
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)
ttp://dusers.dip.jp (D言語友の会)
ttp://www.wish.sakura.ne.jp/desuno/game/Drawing (PrincessDrawing! D言語で作られた横スクロールSTG)
>>2へ続く
0002デフォルトの名無しさん
2010/01/26(火) 00:08:21ttp://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)
ttp://alexanderbothe.com/?id=27 (D-IDE)
ttp://codepoet.sourceforge.net (CodePoet ※計画中)
■過去スレ、関連スレ
http://makimo.to:8000/cgi-bin/search/search.cgi?q=D%8C%BE%8C%EA&sf=2&all=on&view=table&shw=5000
■その他関連スレ
Eclipse統合M28【Java/C/PHP/Ruby/Python/Perl】
http://pc12.2ch.net/test/read.cgi/tech/1247051216/
eclipseってそんなに良いか?【エクリプス】
http://pc11.2ch.net/test/read.cgi/tech/1099300344/
統合開発環境Eclipseプラグイン開発QA
http://pc11.2ch.net/test/read.cgi/tech/1081517094/
"Code of the Nerds" Digital Mars C/C++
http://pc11.2ch.net/test/read.cgi/tech/1044210976/
0003デフォルトの名無しさん
2010/01/26(火) 00:10:200004デフォルトの名無しさん
2010/01/26(火) 00:12:02乙です
0005デフォルトの名無しさん
2010/01/26(火) 07:32:590006デフォルトの名無しさん
2010/01/26(火) 13:02:510007デフォルトの名無しさん
2010/01/26(火) 21:31:21最近のD事情がまとめられているようです。
0008デフォルトの名無しさん
2010/01/27(水) 01:39:260009デフォルトの名無しさん
2010/01/27(水) 02:21:160010デフォルトの名無しさん
2010/01/27(水) 06:58:120011このくらいテンプレにしとこうぜ(レスカットされた人ごめんね)
2010/01/27(水) 10:48:21Dに未来はある?
962 名前:デフォルトの名無しさん投稿日:2010/1/21(木) 19:21:55
>>954
Dに関してははっきり「ない」と言える
963 名前:デフォルトの名無しさん投稿日:2010/1/21(木) 19:59:47
Pythonを知ってるプログラマが100人いるとすればDは0.02人くらい
964 名前:デフォルトの名無しさん投稿日:2010/1/21(木) 23:18:39
pythonと比べるなんてpythonをバカにしているとしか思えない
965 名前:デフォルトの名無しさん投稿日:2010/1/21(木) 23:26:03
Python を 100 とすると
VB 1000000
PHP 500000
C/C++ 100000
Java 50000
Ruby 1000
D 0.02
968 名前:デフォルトの名無しさん投稿日:2010/1/22(金) 03:16:14
D弱杉www
969 名前:デフォルトの名無しさん投稿日:2010/1/22(金) 23:38:53
Dは永遠に迷走し続ける
0012デフォルトの名無しさん
2010/01/27(水) 12:38:080013デフォルトの名無しさん
2010/01/27(水) 20:01:15うぉるたんはそろそろヒゲを生やすべき
0014デフォルトの名無しさん
2010/01/29(金) 00:27:340015デフォルトの名無しさん
2010/01/29(金) 01:32:00>>7と>>9も載せてるが、ttp://www.kmonos.net/pub/Presen/zatsu5.pdf
五月予定。
0016デフォルトの名無しさん
2010/01/29(金) 03:13:280017デフォルトの名無しさん
2010/01/29(金) 23:06:31thx
じゃあAndreiの本はD3.0のガイドにもなるのだろうか
英語苦手なんだよなー
0018デフォルトの名無しさん
2010/01/30(土) 00:52:00発売どんどん延期してるし,最後に触れる可能性はあるか
0019デフォルトの名無しさん
2010/01/30(土) 08:30:59D3.0のガイドにもなる……か。
確かに脱稿時点でD2.0の仕様を固定と書かれているので、
その可能性は否定できないな。
>>18
同感。
0020デフォルトの名無しさん
2010/01/30(土) 17:43:51* Clarification: function returns are not lvalues
* Added shared static constructors/destructors, regular static constructors/destructors now deal with TLS
* Add -map command line switch
* Add @disable attribute
* Delegates and function pointers may be used in CTFE
* Delegate literals and function literals may be used in CTFE
* Lazy function parameters may now be used in CTFE
* Slicing of char[] arrays may now be used in CTFE
* added static/final function implementations to interfaces
* added getOverloads, identifier, and isStaticFunction traits.
* ModuleInfo changed from class to struct
* Bugzilla 3556: version(CTFE)
* Bugzilla 3728: getOverloads and identifier traits
0021デフォルトの名無しさん
2010/01/30(土) 18:56:02乙
なんかいろいろ来たな
@disableって何だろ?
0022デフォルトの名無しさん
2010/01/30(土) 19:48:56かなり前にこのスレで話題に出てたな
0023デフォルトの名無しさん
2010/01/30(土) 22:23:150024デフォルトの名無しさん
2010/01/31(日) 04:09:39乙。
これでBindings for the Windows APIを最新版で使える……。
0025デフォルトの名無しさん
2010/01/31(日) 08:17:14前に話していたのは
interface A{
int f(int i) in{assert(i>0);}
out(r){assert(r>0);}
}
みたいに非final/非staticなメソッドじゃなかったか?
何で普通のメソッドが含まれていないんだ・・・
0026デフォルトの名無しさん
2010/01/31(日) 16:10:11@disableはc++1xの=deleteみたいだぜ
0027デフォルトの名無しさん
2010/01/31(日) 16:11:55使用禁止にするためにprivateに押しやっても
効果が出ないので@disableみたいなのがいるんだろう
0028デフォルトの名無しさん
2010/01/31(日) 16:15:38ソースで書いてくれ
それじゃわからん
0029デフォルトの名無しさん
2010/02/01(月) 11:54:45場合はどうすればよいですか?
例えば
sort!(Sorter(10), SwapStrategy.unstable)(List);
みたいにして、Listの中身を10からの差の絶対値でソートするみたいな
処理をしたいのです。
0030デフォルトの名無しさん
2010/02/01(月) 14:07:19schwartzSort
0031デフォルトの名無しさん
2010/02/01(月) 16:49:30http://twitter.com/mono_shoo/status/8487179130
0032デフォルトの名無しさん
2010/02/01(月) 16:51:41003329
2010/02/01(月) 17:03:00でも実は本当にやりたいのは10がローカル変数だったりする場合なのです。
int[] ary = [1,5,9,13,18,23];
int Num = 10;
sort!q{abs(Num-a) < abs(Num-b)}(ary);
writeln(ary);
とすると
Error: static assert "Invalid predicate passed to sort: abs(Num-a) < abs(Num-b)"
instantiated from here: sort!("abs(Num-a) < abs(Num-b)",cast(SwapStrategy)0,int[])
なエラーになってしまいます。
これをC++でのbindみたいに何とかすることはできませんでしょうか。
0034デフォルトの名無しさん
2010/02/01(月) 17:28:54int[] ary = [1,5,9,13,18,23];
int n = 10;
bool f(int a, int b) { return abs(n-a) < abs(n-b); }
sort!f(ary);
writeln(ary);
0035デフォルトの名無しさん
2010/02/01(月) 21:02:460036デフォルトの名無しさん
2010/02/01(月) 21:09:460037デフォルトの名無しさん
2010/02/02(火) 00:06:22finalまたはstaticならvtblの衝突はない、という話だったかと思う
でも名前の衝突は回避案が見つかったのか?
interface A { static void f(){} }
interface B { static void f(){} }
class C : A, B {...}
としたときのC.fの扱いとか
0039デフォルトの名無しさん
2010/02/02(火) 18:54:17int[] ary = [1,5,9,13,18,23];
int Num = 10;
sort!((int a, int b){return abs(Num-a) < abs(Num-b);})(ary);
writeln(ary);
0040デフォルトの名無しさん
2010/02/03(水) 23:00:25>>これでBindings for the Windows APIを最新版で使える……。
使ってみた。確かに数箇所コンパイラに指示された所を修正するだけで使えましたさ…だがッ!!
(d3d10.d の ID3D10Device の中の)
誤>> void ClearRenderTargetView(ID3D10RenderTargetView pRenderTargetView, FLOAT[4] ColorRGBA);
正>> void ClearRenderTargetView(ID3D10RenderTargetView pRenderTargetView, FLOAT[4]* ColorRGBA);
……なんだぜッ…(dmd2の場合)!!
…や、みんなもうご承知かもしれませんが3日ほど詰んでたので一応…
0041デフォルトの名無しさん
2010/02/03(水) 23:29:11って例外が投げられたのですが、どう対処してよいのやら・・・
どんな原因が考えられます?
0042デフォルトの名無しさん
2010/02/03(水) 23:49:080043デフォルトの名無しさん
2010/02/03(水) 23:51:11そのまんま、循環依存してるんじゃないの?
循環依存しないようにプログラム書いたらいいんじゃない?
0045デフォルトの名無しさん
2010/02/04(木) 00:46:10import foo;
int fuga;
static this() {fuga = foo.bar + 10;}
module foo;
import hoge;
int bar;
static this() {bar = hoge.fuga + 10;}
どちらの static this() を先に実行したらいいかわからないため、循環依存の例外が発生する
004641
2010/02/04(木) 01:11:04なるほど! よく解りました^^
しかしながら相互importで例外が発生するのなら、
素直に初期化関数を作ったほうが良さそうだ。。。
0047デフォルトの名無しさん
2010/02/05(金) 10:05:35http://d.hatena.ne.jp/repeatedly/20100201/1264972016
流行ってるのか
0048デフォルトの名無しさん
2010/02/05(金) 18:11:50004924
2010/02/05(金) 20:55:54d3d10.d の ID3D10Device の中の定義ミスには気付かなかった。
サンキュー直しとく。
005040
2010/02/07(日) 01:14:41これは、回避可能なのか…?
0051デフォルトの名無しさん
2010/02/07(日) 01:20:24諦めてFLOAT*にしてしまってはどうか
0053デフォルトの名無しさん
2010/02/07(日) 23:28:410054デフォルトの名無しさん
2010/02/07(日) 23:32:53dmd=言語仕様になってる現状そんなもんあっても仕方がない
0055デフォルトの名無しさん
2010/02/07(日) 23:40:44これを再開させよう
0056デフォルトの名無しさん
2010/02/08(月) 00:15:39あ、 >>40 と >>50 は別の話。書き方が悪かった。スマソ。
>>40 は FLOAT[4]* でたぶんいけてる感じ。
>>50 の方は「extern(C++)のinterface内の関数呼び出しに失敗(別の関数を呼んでしまう?)する」
と言うdmdのバグ。おいらにゃお手上げです。
0057デフォルトの名無しさん
2010/02/08(月) 00:28:18でも、ライブラリ周りとか統合できないの?
あとは他言語とのDLL介した連携とかでGC絡みがよくわからん・・・
DでDLL作らん方がいいんだろうか
0058デフォルトの名無しさん
2010/02/08(月) 19:55:23GCを使うのは、一つのDLL内で完結する部分のみだね。
連携部分はmallocとかAPIとかで別個に処理。
0059デフォルトの名無しさん
2010/02/08(月) 21:28:27extern (C++) の interface って DirectXのやつ?
extern (System) にしてもだめ?
006056
2010/02/08(月) 22:15:06006156じゃなくて59
2010/02/08(月) 22:16:430062デフォルトの名無しさん
2010/02/08(月) 22:38:14なるほど、結局そうなるのか。
DLLのサンプルでマルチスレッド未対応になってるのは、
Dの管理外スレッドからのコールはそれこそ”リソースを管理できない”から
falseを返してると勝手に思ってるんだけど、これで合ってるのかな
D言語間でもGCのハンドルを引き回したり・・・DLLは何か後で嵌まりそうだ
0063デフォルトの名無しさん
2010/02/08(月) 23:30:33shared_ptr最高。でもC++はもう使いたくない……
0064デフォルトの名無しさん
2010/02/08(月) 23:53:050065デフォルトの名無しさん
2010/02/09(火) 02:18:56統一フレームワークっぽいのがあれば何かと便利な気がする
複数のD系統DLL使ってたらどうすれば良いのやら・・・
お互いのインターフェイスとかで混乱しそうorz
0066デフォルトの名無しさん
2010/02/09(火) 03:25:320067デフォルトの名無しさん
2010/02/09(火) 08:55:18>統一フレームワーク
Dの弱点はそれだよねえ。.NET使うと「どの環境でも共通して使えるライブラリ群の強み」って言うのを強く感じる。
006865
2010/02/09(火) 10:43:03せめてメモリ周りくらいは何か共通基盤が欲しい。
phobos/tangoとかライブラリ関係なく使えるのが良いんだけど難しいんだろうか。
今は混ぜるな危険って感じがする
0069デフォルトの名無しさん
2010/02/09(火) 11:06:47共通して使えるってなると仮想マシンみたいなもんの上で実行する必要が出てくるんじゃないかなと。
あるいはランタイムライブラリ必須になったり。
0070デフォルトの名無しさん
2010/02/09(火) 12:54:390071デフォルトの名無しさん
2010/02/09(火) 13:17:430072デフォルトの名無しさん
2010/02/09(火) 19:37:15何でtangoはあんなに使い勝手悪いんだろう
命名規約のせいなのか
何にでもclassを持ち出すからか
0073デフォルトの名無しさん
2010/02/09(火) 19:58:070074デフォルトの名無しさん
2010/02/09(火) 22:55:41>命名規約のせいなのか
なぜかPHPのことを思い出した
0075デフォルトの名無しさん
2010/02/10(水) 09:21:38アルファベット順にソートされた形で、foreachで回したいです。
どうやればよいのでしょうか?
0076デフォルトの名無しさん
2010/02/10(水) 12:28:52auto v = aa[k];
...
}
0077デフォルトの名無しさん
2010/02/10(水) 12:35:04thx
keyだけをforeachで回すという発想がなかったです。
0078デフォルトの名無しさん
2010/02/10(水) 17:28:590079デフォルトの名無しさん
2010/02/10(水) 19:56:280080デフォルトの名無しさん
2010/02/10(水) 21:11:23たとえば上位4バイトをhash値でテーブルにして
残りの下位バイトをhash重複のリンクリストにすれば最強
0081デフォルトの名無しさん
2010/02/12(金) 02:00:160082デフォルトの名無しさん
2010/02/12(金) 02:48:30(´・ω・`)あ?
0083デフォルトの名無しさん
2010/02/13(土) 01:42:35http://www.dsource.org/projects/phobos/changeset/1419
opUnary, opBinary
0084デフォルトの名無しさん
2010/02/13(土) 01:49:080085デフォルトの名無しさん
2010/02/13(土) 08:43:56SDLはライセンスが面倒くさそうなのが気になります。
0086デフォルトの名無しさん
2010/02/13(土) 09:43:04あとはDXライブラリとかAllegroとか
0087デフォルトの名無しさん
2010/02/13(土) 11:05:05どうもです。
ライセンス関係はあまり知識がないのですが、LGPLはよく理解した上で使わないと痛い目に遭いそうな怖さを感じます。
DXライブラリを使う事にします。
0088デフォルトの名無しさん
2010/02/13(土) 13:01:27int member = void;
}
これできないのですが代替手段ありますか?
0089デフォルトの名無しさん
2010/02/13(土) 13:08:350090デフォルトの名無しさん
2010/02/13(土) 23:40:300091デフォルトの名無しさん
2010/02/14(日) 11:25:260092デフォルトの名無しさん
2010/02/15(月) 07:45:260093デフォルトの名無しさん
2010/02/15(月) 17:53:19デリミタを残したまま分割することってできないのでしょうか。
0094デフォルトの名無しさん
2010/02/15(月) 18:01:510095デフォルトの名無しさん
2010/02/15(月) 19:26:260096デフォルトの名無しさん
2010/02/15(月) 21:01:580097デフォルトの名無しさん
2010/02/15(月) 22:49:410098デフォルトの名無しさん
2010/02/16(火) 01:12:150099デフォルトの名無しさん
2010/02/16(火) 03:47:350100デフォルトの名無しさん
2010/02/16(火) 05:27:280101デフォルトの名無しさん
2010/02/16(火) 07:15:45■ このスレッドは過去ログ倉庫に格納されています