1read 100read
2012年07月プログラム9: D言語 Part30 (568) TOP カテ一覧 スレ一覧 2ch元 削除依頼
【実験台】 Python 3.0 のお勉強 Part 1 【非互換】 (503)
C#, C♯, C#相談室 Part76 (952)
ARToolKitでARを作ろう (245)
Lisp Scheme Part35 (202)
Metroスタイルアプリ開発について語れ (207)
△△もっとStruts2の良さを教えてくださいSsssion6 (637)

D言語 Part30


1 :2012/07/31 〜 最終レス :2012/11/08
プログラミング言語 D (D Programming Language) について語るスレッドです。
■本家
http://dlang.org/ - 公式(英語)
http://www.kmonos.net/alang/d/ - 公式の和訳
http://d.puremagic.com/issues/ - D言語バグ報告
https://github.com/D-Programming-Language - D言語開発リポジトリ
■Wiki
http://dusers.dip.jp/ - D言語友の会(日本語フォーラムあり)
http://prowiki.org/wiki4d/ - Wiki4D(公認Wiki)
■前スレ
D言語 Part29
http://toro.2ch.net/test/read.cgi/tech/1329714331/
■過去スレ、関連スレ
http://makimo.to:8000/cgi-bin/search/search.cgi?q=D%8C%BE%8C%EA&sf=2&all=on&view=table&shw=5000

2 :
■IDE
http://www.dsource.org/projects/visuald - Visual D(Visual Studioプラグイン)
http://code.google.com/a/eclipselabs.org/p/ddt/ - DDT(Eclipseプラグイン)
■ライブラリ
http://www.dsource.org/projects/dwt - DWT(GUIライブラリ)
http://www.dsource.org/projects/gtkd - GtkD(GUIライブラリ)
https://github.com/Rayerd/dfl - DFL(GUIライブラリ・非公式最新版)
http://www.dsource.org/projects/derelict - Derelict(SDL/OpenGLなどのポーティング)
http://www.ku6.jp/keyword6/1.html - 傾き指向プログラミング(SDLなどのポーティング)
■D言語で作られたゲーム
http://www.nicovideo.jp/mylist/4453698 - D言語で作られた芝ゲー niconico動画
http://www.asahi-net.or.jp/~cs8k-cyu/ - ABA Games

3 :


4 :
でつ・

5 :
新スレ・

6 :
>>1

うぉるたんかわいいようぉるたん

7 :
新スレだ!D2.060だ!

8 :
最近更新してもコンパイル通っちゃったり修正箇所少なかったりしてかなしい

9 :
dmdでコンパイルエラー出ないと悲しくなる
だがoptlink、てめーはだめだ

10 :
うぉるたんが2.060をさっさとリリースして Win64を進めるんじゃー
ってゆってたから年内には改善されるかもしれない

いや、やっぱり年内は無理かな

11 :
>>8
い、いいことじゃん…

12 :
あ?

13 :
い?

14 :
を?

15 :
implibとか入ってるDigital Marsのbup.zipをウィルスセキュリティZEROがウィルス扱いして隔離するんだけど・・・

16 :
>>1

17 :
>>8-9
コンパイルエラー駆動開発

18 :
>>15
VIRUS TOTALでは反応しない
ttps://www.virustotal.com/url/e6d440059ad650064eed600044801706e7988a8cfc6322e9a976918c6d74f014/Rysis/1344067418/
自己判断でドゾー

19 :
コンパイルエラーを直すのが一種のパズルゲームのように面白いのはDの利点だよ

20 :
次のバージョン辺りから
いままでルーズな感じだったのを
constチェックをうるさくつけるようになるってこと?

21 :
片山くん、俺は君を信じてWondersに乗っかることにしたから
今後も飽きずに対応してくれな
じゃ、ちょっと大型アプリケーション作りに行ってくるわ

22 :
>>18
Zeroのことだから誤認だと思ったけどやはり・・・

23 :
D用のfreeglutって無かったでした?

24 :
ある

25 :
doko?

26 :
Derelict3 ni aru yo

27 :
>>前スレ978
ざっとコード見たけどまあ頑張ってるんじゃない?
でも日本でPublic domainという時点でNG

28 :
こういう狭い考えの奴らがスパゲッティーコードを量産し始めるんだろうな

29 :
>>26
arigato. dakedo hayamatte jibunde porting sicyatta yo!!
ima sample ugoita toko

30 :
>>21 これからもサポートやります。
>>27 MITライセンスにしようか?

31 :
自由に使って良いよって意味合いで公開してるんだからPublic Domainでも大丈夫
日本の著作権の考え方と衝突するって言うけど
作者の意図が上のような状態なら
そもそも権利に関して衝突する状況がまず存在しないよ
開発を継続するのなら
gitとか使える所で公開したほうがいいと思う

32 :
githubに上げてくだされー

33 :
Javaからの移植で浮動小数点数の初期化でハマった
こういうハマリポイントまとめておくと後で便利そうと思ったので頑張ってやらない

34 :
すいません。
std.net.curlで一部のUTF8ページの日本語部分が文字化けするのですが、どうすれば良いのでしょうか?
import std.net.curl;
import std.stdio;
void main(){
auto content = get("http://www.yahoo.co.jp/");
write(content); //文字化けなし
auto content1 = get("http://www.excite.co.jp/");
write(content1); //日本語が文字化け
}

35 :
実は名乗ってる文字コードと真の文字コードが違う…
なんてことはないか、さすがに

36 :
その後しらべた所、content-typeのcharset指定がなかったので、ISO-8859-1でデコードされていました。
ubyteで返してchar[]にcastしたら正常に動きました。ライブラリにエンコード指定の方法が欲しいですね。
ありがとうございました。

37 :
Wonders ver.1.03
http://katahiromz.web.fc2.com/d/wonders.html
D1でもビルド可能に。MITライセンスになる。
wonders: 仕様変更。
shobjidl, shlwapi: バグ修正。
tchar: 強化、仕様変更。
commdef: commctrl, commoncontrolsから共通部分を分離。

38 :
>>32
https://github.com/katahiromz/wonders
ちょっと手間取った。

39 :
あるスレッドからTLS変数を一切使わないからTLSコピーしないでほしいんだけどなんか方法ない?

40 :
?

41 :
勝手にコピーとかしないんじゃ?

42 :
スレッドの数だけコピーされるのがイヤってことでしょ
全部 shared もしくは D1 w

43 :
__gsharedでいいじゃん

44 :
TLSは普通に使うんだけど、特定のスレッドからはアクセスしないので
「このスレッドからはTLSを使いませんよ」宣言が欲しいってことでは

45 :
方法無さそうだなあ

46 :
自前のTLS実装作る

47 :
片山さん、ついでにdirect2dのポーティングもやってくだしあ><

48 :
>>39
taskPoolで最低限の初期化を我慢して使い回すか、std.randomのrndGenみたいに使うまでTLSの初期化を遅延するかどっちか?
Threadクラス改造すれば静的コンストラクタ呼び出さないのもいけそうだけど。

49 :
Wonders ver.1.04
https://github.com/katahiromz/wonders
http://katahiromz.web.fc2.com/d/wonders.html
commdefとcommoncontrolsをcommctrlに統合。
gdiplus, fourcc, mmstream, directx/ddraw, directx/ddstreamを追加。
directx関係のimportを最適化。

50 :
>>47 Direct2Dはどのヘッダでしょうか?

51 :
>>50 ぐぐったら
d2d1.h, d2d1helper.h, d2d1helper.h, d2derr.hって出てきた。
ポートするぞ。

52 :
githubを使い始めたり
片山くんが何気に成長しとるw

53 :
d2d1、d2d1helperのポートは難易度高い

54 :
フォント表示にdwrite.h、画像表示にwincodec.hも必要。

55 :
泣き言は完成してから聞く

56 :
ゲーム用サウンドはDirectSoundが廃止になって今はXAudio2が主流だから、DirectXをサポートするならXAudio2はあったほうがいいかも

57 :
d2dはcomのモデルみたいだから大変かもね

58 :
ttp://dpaste.dzfl.pl/88cd7bc7
> 878.d(6): Error: function compileme878.C2.method cannot override a non-virtual function
ちょっと何言ってるか分かんないですね

59 :
ttp://dpaste.dzfl.pl/6f91f1d6
というかpackageってなんなんだ?
漠然とmoduleのことだと思ってたんだけどとんだ間違いで俺が間抜けなだけなのかな

60 :
パッケージはモジュールの集まり
もっとわかりやすく言うとディレクトリ

61 :
>>60
なるほろThx
そういえばJavaもそうだった
だとするとpackageでvirtualじゃなくなるのは単なるバグか

62 :
http://d.puremagic.com/issues/show_bug.cgi?id=1161
まだこんなのも残ってるんだぜ

63 :
privateで装飾すると非仮想関数として固定されるのと同じじゃない?

64 :
仮想関数 ttp://www.kmonos.net/alang/d/function.html#virtual-functions
全ての非staticかつ非privateかつ非templateなメンバ関数は、 仮想関数です。
これは非効率的に聞こえるかもしれませんが、 コード生成時にDはクラス階層を全て把握していますので、 オーバーライドされていない関数への呼び出しは全て最適化されて non-virtual になります。

アクセス保護属性 ttp://www.kmonos.net/alang/d/attribute.html#ProtectionAttribute
package は、モジュールは違っても同じパッケージに属するコードからの アクセスは許可するようにprivateを拡張したものです。
これは、モジュールがネストしたパッケージの中にある場合は、 最も内側のパッケージについてのみ適用されます。

65 :
するとJavaのpackage-privateみたいな属性は存在しないってことかな

66 :
納得いかない
import std.stdio;
extern(C)
void f(int n)
{
  writeln(typeid(&f));
}
void main()
{
   f(0);
}
⇒ void()*

67 :
writelnがアレなだけかね
pragma(msg, typeof(&f)); // void function(int n)

68 :
あ、typeidか

69 :
Dで使用する以下の関数を持つdllの作成について教えてください。dll作成はVisualStudio2010(32bit)を利用します。
現状以下の手順でdllを作成&使用していますが、関数呼び出し時object.Error: Access Violationとなってしまいます。
どこかおかしいところがあれば指摘お願いします。
以下手順です
【1.dll作成】
--- xxx.c ---
__declspec(dllexport) int __stdcall func(int (*f)(int, int), int x, int y);
int __stdcall func(int (*f)(int, int), int x, int y){  return f(x, y);}
【2.implibでxxx.libを作成】
implib /system xxx.lib xxx.def
---xxx.def---
LIBRARY "xxx.dll"
EXPORTS
_func@12
【3.dソースで利用】
dmd src.d xxx.lib
--- src.d ---
extern(System){
int func(int function(int, int) f, int x, int y);
int f0(int x, int y){return x + y;}
}
void main(){
  func(&f, 1, 2); // object.Error: Access Violation
}

70 :
訂正
x func(&f, 1, 2); // object.Error: Access Violation
○ func(&f0, 1, 2); // object.Error: Access Violation

71 :
xxx.cのfuncの引数のfにも__stdcallをつければ通る

72 :
>>71
どうもです。動きました。

73 :
Wonders ver.1.05
https://github.com/katahiromz/wonders
http://katahiromz.web.fc2.com/d/wonders.html
wincodec, dispdib, wownt{16,32}, directx/{d2derr,dxgiformat,
d2dbasetypes,d3d10_1,d3d10sdklayers,d2d1,d2d1helper,
d3d10_1shader,dcommon,dwrite,d3dcommon,id3d10blob}を追加。
mswsock, winsock2: バグ修正。

74 :
GUID定数は、externじゃなくて値埋め込みの方がいいかな?

75 :
構造体は、クラスで継承できなかった。

76 :
個人の日記帳

77 :
twitterだな

78 :
うん

79 :
githubに登録したんだから使う人はそっち見るだろう
失礼だけど需要のほとんど無いライブラリのリビジョンが上がる度に書き込むのはどうかと思うよ

80 :
値型のconst変数の存在価値がわからない
immutableかenumでいいじゃん

81 :
ポインタがあるからじゃ?

82 :
>>75
次は関数パラメータのconst対応行ってみようか

83 :
鬼が居るw

84 :
IDEも作ってもらわなきゃ困る
なんかもう色々と最強なやつな

85 :
現状だとVisualDの開発に参加するのが一番だろうね

86 :
変数の中身をちゃんと見られるようになれば・・・

87 :
どうも動きを見てると
Release版の静的ライブラリを読み込んでいる部分が展開されないような雰囲気

88 :
ここのスレの住人はD言語の成長を暖かく見守ってるようでいいな
他の言語のスレは自分が使ってる言語をクソ糞言ってて気が滅入ってくるよ…

89 :
まあアレだ
食う前に十分太らせないと
肉の旨いもマズいも無いってな

90 :
ていうか、ある意味ではあんま変わらんよね。
クソ!(歓喜)みたいな。

91 :
>>88
!!!D言語に欠点など無いからだ!!!!

92 :
こんなインファイトの殴り合いをかけてくるクソがあるかッ!

93 :
http://www.kmonos.net/alang/d/struct.html
>構造体にデストラクタのあるフィールドを持たせることはできません。
え?!
http://dlang.org/struct.html
>Unions may not have fields that have destructors.
なんだ共用体か・・・

94 :
残念ながら・・・

95 :
共用体のメンバごとにデストラクタ呼んでたらえらいことになるなw

96 :
Dのデストラクタの信用ならなさは異常

97 :
初歩的な質問なんだけど,プログラムを終了するときってどうすればいいんだ?
例外が発生したら writeln(ex); した後に自分を終了したいんだけど。
core.Runtime.terminate(); を使えばいいのかな?

98 :
Cの関数は普通に使えるんでstd.c.process.exitもあるし、
あるいはmainまで伝播させてreturnとか。

99 :
>>98
Thanks!
使い方がまずいのか,
std.c.process.exit だと scope(exit) hoge(); が実行されなかったので,
素直にmainまで伝搬させることにしました。

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
サウンドプログラミング5 (666)
C#は危険だ (336)
人気プログラミング言語ランキング (744)
pythonがこの先生きのこるには (744)
「コンパイラ・スクリプトエンジン」相談室15 (595)
【Perl,Python,PHP】LL バトルロワイヤル 27【JS,Ruby】 (357)
--log9.info------------------
K-POPアイドルっぽい顔したジャニーズはいる? (878)
KAT-TUN→歌 関ジャニ∞→お笑い じゃあNEWSは? (359)
えごいすとの犬【14】 (340)
安田章大の〜7 (830)
女の噂がないTミスタージャニーズは誰?? (251)
渋谷すばる中田あすみ熱愛 (201)
Thin9 u x (725)
■田39田■ (639)
売上&視聴率スレ≪5≫ (232)
美男<イケメン>ですねの主演にブサメン2人と八乙女光 (602)
|д´)|∀`)山田から愛を山田に愛を∞【2】 (666)
チラシの裏 (861)
山田涼介を温かく見守るスレ001 (663)
整形だらけのジャニ (351)
Hey!SaY!JUMP好きな人ぉ〜 (570)
フレンチキスに負けた山下智久が遂に握手会を決行 (204)
--log55.com------------------
格板は我々ホモが完全制圧した part.41
格板は我々ホモが完全制圧した part.42
我々格板ノンケはホモに完全制圧された part.2
格板は我々ホモが完全制圧した part.43
ゲリバwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwwww91
格板は我々ホモが完全制圧した part.44
我々格板ノンケはホモに完全制圧された part.3
我々格板ノンケはホモに完全制圧された part.4