1read 100read
2013年03月プログラム34: D言語 Part31 (270) TOP カテ一覧 スレ一覧 2ch元 削除依頼
mallocの後にfree不要と言うバカいるの?Part2 (228)
delphiで作った有名ソフトって何があるの? (680)
【StarSuite Basic/OpenOffice.org Basic】 (465)
【StarSuite Basic/OpenOffice.org Basic】 (465)
SDL=Simple DirectMedia Layerでゲームだ (533)
音声合成プログラムを作りる (320)

D言語 Part31


1 :2013/01/21 〜 最終レス :2013/03/11
プログラミング言語 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言語 Part30
http://toro.2ch.net/test/read.cgi/tech/1343660743/
■過去スレ、関連スレ
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://mono-d.alexanderbothe.com/ - Mono-D (MonoDevelop プラグイン)
■ライブラリ
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 :
新スレ記念にマジレスすると
Qt とか Python とか知ってしまうと
D いらないんだよね

4 :
dusers.dip.jp/ - D言語友の会(日本語フォーラムあり)
403

5 :
ひょっとしたら復活するかもしれないので一応そのままにしておいた
が、そろそろ一ヶ月たつから見込みは低い
避難所がほしいな

6 :
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 :
core.sys.windows.windows 定義の数値型は64bitに対応できてないね
もうバグ報告されてるかもしれないけど
英語書けないので誰かよろしく…

8 :
LONG_PTRとかは対応してるけど
WPARAMとかLPARAMとかLRESULTがuintとかint決め打ちなのが原因みたい

9 :
やっぱりC/C++のintとかlongのサイズの型の定義モジュールがいるんだって

10 :
cintとかcfloatとかcdouble…
あれ?

11 :
まずcintを定義するために条件分岐が必要で、
次にDWORDみたいなのをcintを使って定義するために条件分岐が必要で…

12 :
別名定義と条件コンパイルで何とかしてくれという方針では

13 :
version(Win64) { }

14 :
(size_tじゃ)いかんのか?

15 :
com関連と64bitが整備されれば
Windows用のGUIアプリケーション作るときに視野に入ってくるんだけどな
手が届きそうなのに届かないw

16 :
関数の引数に構造体の代わりに alias thisした型を入れたら暗黙的に型変換してくれないかなぁ・・・
opAssignでいけるかと思ったらそんなことなかった

17 :
いや無理だろ
alias this以外にもメンバあったら死ぬじゃん

18 :
bgzlrks

19 :
なげーよ

20 :
>>18
ロシア大使館に言えよ

21 :
友の会 http://dusers.dip.jp
ソース貼付サイト(2.061)http://dpaste.dzfl.pl/
年末につながらなくなっていたが両方とも復活した

22 :
ありがとうございます!

23 :
DDTは最新のeclipseに対応していないんだ

24 :
DDTステロ!

25 :
DMDscriptってコンパイル通し作業行われてないんですか?

26 :
ウォルター様は通し作業は有志が動作確認できるようにとわざわざチェックしないでリリースして下さります

27 :
ラムダ式の時だけじゃなくてもうすべての場所でreturn省略できたらいいのに

28 :
関数型言語とかはそうだな
でもあれ手続き型言語でやるとバグの温床だからな

29 :
ハゲの温床に見えた俺
そろそろ寝るか

30 :
return を廃止してその代わりに
関数の頭に fn みたいなキーワードを必須にするのなら
賛成してやってもいい

31 :
なにそのjavascriptの派生言語みたいなそれ やめろよ

32 :
それ何てrust

33 :
一文なら、という条件付きならいいんじゃね

34 :
>>28
詳しく知りたい
なんかまずいの?

35 :
return忘れても
別の値が返ってとりあえず動いてしまうとか

36 :
狙ってなくても戻り値を返してしまうからな
特に関数定義の頭で戻り値の型を明示しなくて良い場合(動的型や型推論付き)は
さらにややこしくなる、まあ組めなくはないけどね

37 :
そんなこと言ってたらOCamlとかバグの塊でとてもじゃないけど使えないみたいな状況になってるはずなんだけど

38 :
ウォルターの人生そのものであるD言語を
そう簡単に仕様変更するわけがないだろ!!

39 :
OCaml は型チェックが厳しいから。

40 :
少なくとも表向きは型のチェックなんてないように思うが
それでも型チェックがうるさいと判断するのかね?

41 :
OCamlは整数の加算と小数の加算で演算子が変わるほど厳しいじゃん・・・

42 :
関数が常に一文なら問題ないんじゃね
必ず戻り値を何か書かないといけないわけで

43 :
関数定義をラムダ式を代入でもいけるようにしてほしいわ・・・

44 :
enum func = (int a)=>a;

45 :
enum f = (int n){ return n+1; }; // 旧
enum f = (int n) => n+1; // lambda
戻り値型の省略なんてしなくていいからreturn省略したい
enum f = int(int n){ n+1; };
これでいいじゃない・・

46 :
それならセミコロンがないほうがいいな
最後の文にセミコロンが無い時に限りreturnの代わりになる、でどうだ
enum f = int(int n){ n+1 };

47 :
ラムダ式だけは何か趣味機能な気がする
これあると便利な事ってどういう分野なんだ

48 :
ラムダ式便利すぎるだろう
むしろ使わない方がおかしい

49 :
サッパリ想像できない
具体例がほしい

50 :
レンジとかアルゴリズム使わない人にはわからないかもね

51 :
普通のdelegateリテラルで十分な気がするんだけど

52 :
=>の糖衣構文はアルゴリズムに渡す時に素敵すぎるね

53 :
記述が短くなるというのは想像以上にいい
これは実際に使う場面に行き当たらないと実感するの無理かも

54 :
あれだ
推論可能な場面でいちいちautoでもvarでもなく
型名を書かなきゃいけないJavaとかに絶望するのといっしょの感覚かも

55 :
どうせ引数の型あんまり省略できないし、delegateとはreturnの有無の差くらいしか無いと思うんだけどなあ・・

56 :
便利かどうかなんて主観でしかないんだから互いに「お前がそう思うんならそうなんだろうお前ん中ではな」で終わる話

57 :
平行線だったのは結果論だけどなー。
その主観が交わる可能性があった以上、コピペでまとめちゃうのはいくないっすよ

58 :
( {...} ) <- こういうのがイヤ

59 :
俺は好き

60 :
>>58
ブレース消えるのいいよね

61 :
我・乱無駄の名において命ず・消え去れ無礼衆!

62 :
// 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 :
ヒント:ラムダで引数の型が省略できる場合には関数リテラルでも同じ書き方ができる

64 :
http://dlang.org/deprecate.html
今までdeprecated で生き延びていた機能の多くが
2.061で抹殺されていることに気づいた

65 :
結局のところdelegateあるならラムダいらないんじゃね?と言う話
別にあって都合が悪いこともないから消せ!とは言わんけどw

66 :
ラムダは構文糖だからいらないと言われても困る
autoが消滅して型名を書けと言われたりscope(exit)が消滅してtry-finallyを書けと言われたりしたら俺はDを投げる

67 :
ラムダ要らない派とか今まで一人も出てきてないと思うけど

68 :
>>61
ダークフレイムマスター

69 :
complex型がいつ消えるかどきどきだわ・・・

70 :
消えたらC99の複素数関数をABI互換性を保って呼ぶ方法が無くなるのか?

71 :
std.complexじゃダメなの?

72 :
C99のcomplexはFPUだかSSEだかのレジスタ渡しだろ?
ライブラリ定義はstructに詰めた状態だからスタック渡しになってしまわね?

73 :
ライブラリ内でアセンブラで書いてあれば別にいいんじゃないの
あるいは何らかの最適化に通るのでもいいわけで
ABI互換性は困りそうだが

74 :
D言語って、
int[100] a, b;
a[] += b[];
で勝手にSIMD演算とかいうのやってくれるんですか?

75 :
>>74
http://www.kmonos.net/alang/d/simd.html
頑張ってくれる可能性はあるけどわりと限界もある、みたいな感じ

76 :
ターゲット環境を明示してなければ勝手にそういうコードを吐くわけ無い
環境を特定するなら素直に core.simdで定義されている配列もどきを使うべし

77 :
classのコンストラクタで定義した変数をメンバーにしちゃえる的な機能がほしいなぁ
多分害悪の元なんだろうけど
class hoge
{
this()
{
int a = 0 as public;
}
}
見たいにしたらhoge.aが使えるみたいなね!
thisが一個のとき限定でいいからさぁ・・・

78 :
>>77
どんな意図の機能?
頑張れば既存の機能でやりたいことが解決できるかも

79 :
黒魔術ツールopDispatchがあるからなあ
ただコンストラクタで書くならメンバでいいだろという気がするが

80 :
現在のスコープから参照できるすべてのシンボルを列挙する__traitsが欲しい
あとそのシンボルが変数なのかモジュールなのかクラスなのか構造体なのか判別するのもついでに欲しい

81 :
C++の特殊化でなら省力のために欲しいかな
mixin無ぇーし

82 :
顧客が本当に必要だったもの:賢いIDE

83 :
IDEとか重いだけだよ!

84 :
DDTがeclipse4.2に入らないのが痛い

85 :
軽いIDEには需要があるのか

86 :
Sublime Textがそんな感じじゃない?
プロジェクト機能あるしD対応してるし

87 :
言語仕様の追加まで対応出来る賢いIDEをだな

88 :
IDEの触手の一端がウォルたんの脳みそに取り付いているだと…!?

89 :
IDE(CUI)

90 :
Integrated Drive Electronics
Integrated Development Environment
エンビロンメント?

91 :
>>90
エンヴァイロンメント。
電子辞書を買いましょうね。

92 :
マクロまだー?

93 :
カタカナ表記につっかかるのはナンセンスだと思うけど

94 :
カタカナ表記としてもエンヴァイロンメント、エンバイロンメント以外に存在しない

95 :
ディーゲンゴも大五郎も大して変わらんしな

96 :
インバイロンメントさんが泣いてる

97 :
わーにんぐ・わーにんぐ

98 :
エンベロープメント
モーリメメント
ヤックデカルチュアメント

99 :
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の破壊的変更だったら欣喜雀躍するんだが…

100read 1read
1read 100read
TOP カテ一覧 スレ一覧 2ch元 削除依頼
アセンブラ初心者スレッド (336)
【普通のやつらの】 Arc Language 0 【上を行け】 (258)
Microsoft Silverlight その9 (428)
アセンブラ初心者スレッド (336)
C#,C#の宿題片付けます。 (796)
delphiで作った有名ソフトって何があるの? (680)
--log9.info------------------
意外にも共演した事が無い声優を上げるスレ3 (822)
3大歌の下手な声優、堀江由衣・平野綾、もう一人は? (239)
車、バイクの免許持ってる声優 (610)
お酒の好きな声優さん (377)
クリスマスに女性声優が男と過ごしていないか監視するスレ3 (960)
【音声投稿】こえ部 No.6【コミュニティ】 (673)
ときめきメモリアルGirl's Side声優総合スレ 3 (944)
【スフィア】sphereアンチスレ【ごり押しR】 (582)
#【案・遙・金】ネオロマンス声優スレ45 (806)
声優のブレイクや人気をデータで語るスレ part2 (439)
なぜアニヲタ・声優ヲタはAKBが嫌いなのか (318)
【池沼 基地外 精神障害 キャラ作り エロ】な声優 (239)
【逮捕】平野綾殺害&フジテレビ爆破予告犯【直前】 (707)
新人声優を語るスレ (300)
声優板自治スレ39 (852)
◆街角!!声優目撃情報3◆ (516)
--log55.com------------------
【八百長】白鵬への想い Vol.10001 2017-11 【卑怯者】
白鵬の同胞昇進へのお膳立てがあまりにも露骨すぎる
【白鵬は】大相撲記録スレッド 17枚目【基地外】
【自称詐欺】 能町みね子 【 ねぎこ 】 2カマ目
日馬富士撲滅スレ☆永久追放は八百長横綱白鵬鶴竜もだろ
白鵬と鶴竜にはとことん甘い島国日本と相撲協会
ζζ白鵬の墓ζζ
_______________激悪豚野郎 白鵬翔を批判するスレ_______________