プログラミング言語 D (D Programming Language) について語るスレッドです。
■本家
http://dlang.org/ - 公式(英語)
http://www.kmonos.net/alang/d/ - 公式の和訳 (やや古いので注意)
https://issues.dlang.org/ - D言語バグ報告
https://github.com/D-Programming-Language - D言語開発リポジトリ
■Wiki
http://wiki.dlang.org/ - 公式Wiki
http://dusers.dip.jp/ - D言語友の会(日本語フォーラムあり)
■プログラミング言語D (TDPL: The D Programming Language)
Andrei Alexandrescu 日本語版
http://www.shoeisha.co.jp/book/detail/9784798131108
ソース貼付サイト http://dpaste.dzfl.pl/
<$><$> https://www.bountysource.com/trackers/383571-d-programming-language
■前スレ
D言語 Part33
http://toro.2ch.net/test/read.cgi/tech/1396145538/
■過去スレ、関連スレ
http://makimo.to:8000/cgi-bin/search/search.cgi?q=D%8C%BE%8C%EA&sf=2&all=on&view=table&shw=5000
D言語 Part34©2ch.net
■ このスレッドは過去ログ倉庫に格納されています
2015/01/25(日) 12:07:29.52ID:gAd5OZDm
362デフォルトの名無しさん
2015/12/20(日) 01:09:48.99ID:VpDH1DV/ >>361
?が1文字マッチのワイルドカードってのは関係してない?
?が1文字マッチのワイルドカードってのは関係してない?
363デフォルトの名無しさん
2015/12/20(日) 11:01:49.72ID:8RLYRFXT364デフォルトの名無しさん
2015/12/20(日) 17:10:30.71ID:uT5SbDNR あれ、戻り値だけ違う関数ってオーバーロードできたっけ?
365デフォルトの名無しさん
2015/12/21(月) 12:10:28.67ID:ayhLnjzU 宣言はできるけど使えない
左辺値から型推論とかしてくれると嬉しいんだけどね
左辺値から型推論とかしてくれると嬉しいんだけどね
366デフォルトの名無しさん
2015/12/21(月) 14:13:11.66ID:1HvlxK+M T valueOf(T)(){ return to!T(s_); }
これもうまくいかんな
これもうまくいかんな
367デフォルトの名無しさん
2015/12/22(火) 23:01:04.25ID:RP62Thfp 明示cast必須になるけど
T opCast(T)(){ return s_.to!T; }
T opCast(T)(){ return s_.to!T; }
368デフォルトの名無しさん
2015/12/23(水) 08:52:41.01ID:2F8TsTF+ alias hoge this; しなくてよくなるからありがたいね
369デフォルトの名無しさん
2015/12/23(水) 10:13:41.06ID:1VnhNGH+ 明示的キャスト滅すべし
370デフォルトの名無しさん
2015/12/26(土) 10:10:16.02ID:PvF8tuZ2 みなさん良いお年を
371デフォルトの名無しさん
2015/12/26(土) 12:41:22.97ID:yhjxl89x D言語話題ないの?
372デフォルトの名無しさん
2015/12/26(土) 13:55:49.41ID:Y1V4v3Og Advent Calendar面白かったよ。
書いた人たち乙です。
書いた人たち乙です。
373デフォルトの名無しさん
2015/12/26(土) 17:44:23.06ID:OqNeHPOm 冬休み中にAdventCalendarゆっくり読む
楽しみだなあ。書いた人たち乙〜。
楽しみだなあ。書いた人たち乙〜。
374デフォルトの名無しさん
2015/12/27(日) 16:08:22.48ID:xwOrDqSJ Voting For std.experimental.ndslice
http://forum.dlang.org/thread/nexiojzouxtawdwnlfvt@forum.dlang.org
そろそろ投票終わり
http://forum.dlang.org/thread/nexiojzouxtawdwnlfvt@forum.dlang.org
そろそろ投票終わり
375デフォルトの名無しさん
2016/01/04(月) 12:10:44.32ID:bFE828K2 https://github.com/D-Programming-Language/dlang.org/commit/77324039087e9283f40244195857c2f9fd4712eb#diff-59280080f58c2ff747f066c5b0b2fcebL423
- $(LI As a first programming language - Basic or Java is more suitable
+ $(LI As a first programming language - Python or JavaScript is more suitable
時代の流れを感じる
Basicの方が初めてのプログラミングには良いと思うんだがなぁ
- $(LI As a first programming language - Basic or Java is more suitable
+ $(LI As a first programming language - Python or JavaScript is more suitable
時代の流れを感じる
Basicの方が初めてのプログラミングには良いと思うんだがなぁ
376デフォルトの名無しさん
2016/01/04(月) 18:59:05.97ID:uh/Y4MEw BASICは害悪
377デフォルトの名無しさん
2016/01/04(月) 19:11:18.78ID:SQWKaGiq まあ妥当と思う。Basicって括りがざっぱだけど、
(N-88とかそういう)BASIC → まあやらんでええやろ。行番号とか。ねえ?
VB → PowerShellが出てシリスボミ感がある。
Python → 個人的にはtkinterの存在がでかい。
JavaScript → すぐ遊べる。すぐ自慢できる(←重要
あとは英才教育的な観点からならプログラミンとか?
(N-88とかそういう)BASIC → まあやらんでええやろ。行番号とか。ねえ?
VB → PowerShellが出てシリスボミ感がある。
Python → 個人的にはtkinterの存在がでかい。
JavaScript → すぐ遊べる。すぐ自慢できる(←重要
あとは英才教育的な観点からならプログラミンとか?
378デフォルトの名無しさん
2016/01/05(火) 13:16:14.19ID:L7c5HugA 時代は Elixir ですよ
D でもいいけど
すぐ自慢できるのは Python だろ
D でもいいけど
すぐ自慢できるのは Python だろ
379デフォルトの名無しさん
2016/01/05(火) 13:36:42.75ID:Woj1scU2 インデントを間違えて恥をかくのが Python
380デフォルトの名無しさん
2016/01/05(火) 22:00:16.80ID:aZwzN0+G BASICといったらbload
381デフォルトの名無しさん
2016/01/14(木) 17:59:53.06ID:vRAUMBFP382デフォルトの名無しさん
2016/01/15(金) 15:37:05.03ID:2/bjUIYj std.experimental.yeslolitanotouch
383デフォルトの名無しさん
2016/01/16(土) 10:21:44.91ID:CPZavs1f 64bitのWin32対応DLL作りたいんだけど?
384デフォルトの名無しさん
2016/01/16(土) 15:12:02.78ID:CPZavs1f385デフォルトの名無しさん
2016/01/16(土) 15:55:41.85ID:qeKxK5Cv386デフォルトの名無しさん
2016/01/16(土) 15:57:39.55ID:qeKxK5Cv あれ途中で切れた。
dmd -m64 -shared mydll.d dll.d mydll.def
dmd -m64 -shared mydll.d dll.d mydll.def
387デフォルトの名無しさん
2016/01/16(土) 16:12:25.40ID:qeKxK5Cv >>384 それぞれ書かれた時期が違うんじゃまいか
388デフォルトの名無しさん
2016/01/16(土) 16:31:09.62ID:eTAXMCcj DMD で単純な x64 バイナリを作るところまでは行けてるんでしょ?
Win32 DLL も作れるんでしょ?
x64 で Win32 App と結合できるかって話でしょ?
出来ないと思うけど
Win32 DLL も作れるんでしょ?
x64 で Win32 App と結合できるかって話でしょ?
出来ないと思うけど
389デフォルトの名無しさん
2016/01/16(土) 18:04:51.96ID:w507ceUH ブリッジ役のDLLも用意して64<-->32間をプロセス間通信でうんたらかんたら
390デフォルトの名無しさん
2016/01/22(金) 17:45:10.29ID:tiw7VxmH >>336
> DのIUnknownの宣言のReleaseの後にダミーのメソッドを、
> ・2個追加することでC++で実装されたinterfaceをDから呼び出すことが、
> ・1個追加することでDで実装されたinterfaceをC++から呼び出すことが、
> それぞれできたのですが、とてもまともな解決策とは思えません。
https://issues.dlang.org/show_bug.cgi?id=15589#comment_text_0
やっぱりダミーを追加するしかないらしい
> DのIUnknownの宣言のReleaseの後にダミーのメソッドを、
> ・2個追加することでC++で実装されたinterfaceをDから呼び出すことが、
> ・1個追加することでDで実装されたinterfaceをC++から呼び出すことが、
> それぞれできたのですが、とてもまともな解決策とは思えません。
https://issues.dlang.org/show_bug.cgi?id=15589#comment_text_0
やっぱりダミーを追加するしかないらしい
391336
2016/01/22(金) 20:16:27.79ID:6NMzASC5 わぁ!どうもありがとう!まだ書きかけ&お粗末ですが、その時の成果物です。
https://github.com/garlic-flavor/D7z
ツッコミ/プルリクお待ちしております。m(_ _)m
https://github.com/garlic-flavor/D7z
ツッコミ/プルリクお待ちしております。m(_ _)m
392デフォルトの名無しさん
2016/01/22(金) 22:46:33.96ID:ph7VTr94 いつのまにか公式が改装してた
なんかすごくプログラミング言語の公式ページっぽい
なんかすごくプログラミング言語の公式ページっぽい
393デフォルトの名無しさん
2016/01/25(月) 22:17:17.47ID:bhSAv5/D /r/programming 見てるとほぼ毎日Dの記事があって、ついに時代がきたか感がある
394デフォルトの名無しさん
2016/01/27(水) 00:28:20.96ID:KSmE0N2z scope(exit)はスコープ抜けるときに実行されるけどさ、
呼び出し元のスコープ抜けるときに実行されるような処理を書く方法って存在しないのかな
例えば
foo(){
hoge();
}
で、hoge()の定義内に書いてfoo()の最後に実行されるようなやつ
呼び出し元のスコープ抜けるときに実行されるような処理を書く方法って存在しないのかな
例えば
foo(){
hoge();
}
で、hoge()の定義内に書いてfoo()の最後に実行されるようなやつ
395デフォルトの名無しさん
2016/01/27(水) 00:56:43.14ID:0fSZRkm9 そんなんバグの地雷原やがな
396デフォルトの名無しさん
2016/01/27(水) 01:33:09.39ID:EmUF4YzU 部品化の概念を否定するその硬派な姿勢、俺は評価するよ
397デフォルトの名無しさん
2016/01/27(水) 01:46:23.73ID:KSmE0N2z 事故解決。mixinという道具があったではないか
398デフォルトの名無しさん
2016/01/27(水) 05:55:19.47ID:mt1RyfFz399デフォルトの名無しさん
2016/01/27(水) 09:42:58.44ID:PS/Qpp4W 呼び出し元で scope(exit)
400デフォルトの名無しさん
2016/01/27(水) 23:58:59.71ID:W8pZv3Sr std.datetime.measureTime がそんなんだったような。
401デフォルトの名無しさん
2016/01/28(木) 12:36:28.83ID:U7RHxiIq 2.070
402デフォルトの名無しさん
2016/01/28(木) 15:55:14.52ID:AP1O7sAh もう2.070か早い
403デフォルトの名無しさん
2016/01/28(木) 23:48:56.81ID:tnawcIV/ core.sys.windowsのナカミがおきかわっとるー\(・∀・)/
404デフォルトの名無しさん
2016/01/29(金) 00:16:04.81ID:iqnom6tW >>328 なおった!
405デフォルトの名無しさん
2016/02/01(月) 11:49:31.71ID:C4njzqYk もしかしてdmcって64bitのコンパイルオプションないの?
406デフォルトの名無しさん
2016/02/01(月) 12:03:33.19ID:gmWomOLn ないっしょ
16bit ならまだあるかもしれない
それに optlink まで含めると 32 ですら騙し騙し使ってる状況
16bit ならまだあるかもしれない
それに optlink まで含めると 32 ですら騙し騙し使ってる状況
407デフォルトの名無しさん
2016/02/02(火) 23:16:29.97ID:N0vbs9wX 今さらだけどD用のお勧めのGUIライブラリある?
マルチプラットフォームで。
マルチプラットフォームで。
408デフォルトの名無しさん
2016/02/03(水) 11:18:15.33ID:Drvvyslw >>407
お勧めはDWT
対抗はDlangUI
DWT http://qiita.com/sfujita/items/18bd56ae505c4b3de7b3
DlangUI http://qiita.com/namachan10777/items/5a792bc1ac93ce1ccb1c
お勧めはDWT
対抗はDlangUI
DWT http://qiita.com/sfujita/items/18bd56ae505c4b3de7b3
DlangUI http://qiita.com/namachan10777/items/5a792bc1ac93ce1ccb1c
409デフォルトの名無しさん
2016/02/03(水) 12:53:31.69ID:5/pxQ4tU wxD
410デフォルトの名無しさん
2016/02/03(水) 13:07:25.53ID:uEOUJl1K 自分でメンテする気があれば正直どれでもいいし
そうじゃなければ D でGUIなんて考えないほうがいい
そうじゃなければ D でGUIなんて考えないほうがいい
411デフォルトの名無しさん
2016/02/03(水) 15:13:27.73ID:IpVTmFVK LDCからEmscripten通してHTML5にでも変換したほうがいいんじゃない?(適当)
412デフォルトの名無しさん
2016/02/03(水) 15:49:20.75ID:5/pxQ4tU 時代は io.js + Electron ですねわかります
413デフォルトの名無しさん
2016/02/03(水) 19:08:22.05ID:JdStCQ++ ぜんぜんわからない
D普及のために、できるだけわかりやすく情報を提供してください。切に望みます
D普及のために、できるだけわかりやすく情報を提供してください。切に望みます
414デフォルトの名無しさん
2016/02/03(水) 19:10:01.79ID:JdStCQ++ Cのインタフェースがていきょうされていれば、利用できる
これが鍵なんだろうけど、初心者むけではない
これが鍵なんだろうけど、初心者むけではない
415デフォルトの名無しさん
2016/02/03(水) 19:11:50.36ID:JdStCQ++ DWTは、マルチプラットフォームではないのでは?
416デフォルトの名無しさん
2016/02/03(水) 19:15:47.11ID:JdStCQ++ わからんわからんわからんわからんわからんわからんわからんわからん
417デフォルトの名無しさん
2016/02/03(水) 20:44:42.00ID:NLGo/bvc 自分は何がしたいのか、何ができなかったのか
情報がなければ答えようもなかろう
情報がなければ答えようもなかろう
418デフォルトの名無しさん
2016/02/03(水) 23:06:56.80ID:mzIeyrY+ わからんわからんわからんわからんわからん
419デフォルトの名無しさん
2016/02/04(木) 01:50:12.30ID:jp6x7PMB420デフォルトの名無しさん
2016/02/04(木) 15:18:46.80ID:wiwVjChn421デフォルトの名無しさん
2016/02/04(木) 17:17:07.59ID:ob+62gtm DでwrapしたPythonObjectでwxPython使ったら意外と便利だったな
422デフォルトの名無しさん
2016/02/05(金) 19:27:30.79ID:HabP63UN DFLがマルチプラットフォームになれば文句ないんだがなぁ
423デフォルトの名無しさん
2016/02/05(金) 21:20:24.44ID:hmTKeVMY どうしてもマルチプラットフォームが必要なら
HTML5 でどうにかする方が現実的
HTML5 でどうにかする方が現実的
424デフォルトの名無しさん
2016/02/06(土) 20:54:27.15ID:2Uy/PFwr もう仕様固まってきて大きな動きないのにサードパーティのライブラリが整備されないのは
Dが今まで積んできた業かな
Dが今まで積んできた業かな
425デフォルトの名無しさん
2016/02/07(日) 18:20:11.44ID:eIUfmNby これからに期待します
426デフォルトの名無しさん
2016/02/08(月) 17:21:11.18ID:LpGg46bP Oh my
427デフォルトの名無しさん
2016/02/08(月) 18:04:50.88ID:M0j0fnEJ Oh my D-lang, Oh my D-lang,
Oh my D-lang Clementine.
Oh my D-lang Clementine.
428デフォルトの名無しさん
2016/02/13(土) 18:13:48.32ID:tVuFpQtK 単にユーザが少ないんじゃね
429デフォルトの名無しさん
2016/02/13(土) 20:34:35.13ID:OlzkmTVA ライブラリが整備されないのはなぜ? ユーザーが少ないから
ユーザーが少ないのはなぜ? ライブラリが整備されないから
ユーザーが少ないのはなぜ? ライブラリが整備されないから
430デフォルトの名無しさん
2016/02/13(土) 20:41:50.43ID:tVuFpQtK パワフルなユーザが少ないのかな……うん
431デフォルトの名無しさん
2016/02/15(月) 18:05:56.16ID:+caJiYS4 コンパイル時にテキスト読み込んでさ、
行数の数だけ文字列mixinして関数作りたいんだけど
任意回数の文字列ミックスインのループってどう書くんだろう・・・・・・。
行数の数だけ文字列mixinして関数作りたいんだけど
任意回数の文字列ミックスインのループってどう書くんだろう・・・・・・。
432デフォルトの名無しさん
2016/02/15(月) 18:13:18.59ID:TvNTryet 仕様変更しすぎたな
433デフォルトの名無しさん
2016/02/15(月) 18:53:15.56ID:8Os0TVn8 >>431
先に文字列加工して最後にまとめてミックスイン出来ないのん?
先に文字列加工して最後にまとめてミックスイン出来ないのん?
434デフォルトの名無しさん
2016/02/15(月) 19:14:52.44ID:Dah95cUu435デフォルトの名無しさん
2016/02/15(月) 19:20:06.77ID:8Os0TVn8 本家に追いつくのは無理だから mingw で動くように戻しておくれ
436デフォルトの名無しさん
2016/02/15(月) 20:48:59.61ID:RiiAF+b/ ここ1, 2年くらい大した仕様変更ないような
437デフォルトの名無しさん
2016/02/15(月) 21:17:10.53ID:NUVEFX4y >>436
過去に仕様変更し過ぎたせいでD言語=仕様変更っていう認識が一般に広まったせいじゃね?
過去に仕様変更し過ぎたせいでD言語=仕様変更っていう認識が一般に広まったせいじゃね?
438デフォルトの名無しさん
2016/02/15(月) 22:47:40.09ID:obZmlxnC >>431
mixin template loop(string s,r...){mixin(s); mixin loop!(r);}
mixin template loop(string s){mixin(s);}
mixin template loop(string s,r...){mixin(s); mixin loop!(r);}
mixin template loop(string s){mixin(s);}
439デフォルトの名無しさん
2016/02/16(火) 16:56:10.74ID:qagv5yy3 信用は一度失うと取り戻すのは困難ってことさね
D言語について少しでも調べてもらえば今そうでないのはわかることだから、
D言語を知らない人がD言語に触れる機会を増やす・・・
つまりD言語で書かれた一般向けアプリがもっと出ればいいわけだ
よし!あとはまかせたぞ!
D言語について少しでも調べてもらえば今そうでないのはわかることだから、
D言語を知らない人がD言語に触れる機会を増やす・・・
つまりD言語で書かれた一般向けアプリがもっと出ればいいわけだ
よし!あとはまかせたぞ!
440デフォルトの名無しさん
2016/02/18(木) 12:23:28.05ID:S96kZ0X7 もう Julia でいいような気がしてきた
手遅れかもな
手遅れかもな
441デフォルトの名無しさん
2016/02/19(金) 13:09:30.63ID:Ap7HgcUx442デフォルトの名無しさん
2016/02/19(金) 13:59:24.31ID:hw/X0Y/j 簡単過ぎて調べなくても判ってしまう言語だと人気が無いことになるな
443デフォルトの名無しさん
2016/02/19(金) 18:48:50.77ID:3Pzm9drf D言語って名前のイメージが悪くなっちゃってるからD++とかに変えよう
444デフォルトの名無しさん
2016/02/19(金) 20:15:44.55ID:unMO5CFj 求められているのは D-
445デフォルトの名無しさん
2016/02/20(土) 14:46:25.61ID:X13YwWkx マイナスなんか要らないわ
446デフォルトの名無しさん
2016/02/20(土) 16:07:27.61ID:WzAGBuRR D#
447デフォルトの名無しさん
2016/02/21(日) 10:34:55.98ID:zmvsu5mb >>440
exeはnativeなDの足元にも及ばない
exeはnativeなDの足元にも及ばない
448デフォルトの名無しさん
2016/02/21(日) 22:57:01.53ID:satROU6m D未満はおっぱいと呼ばない
449デフォルトの名無しさん
2016/02/22(月) 02:56:00.48ID:gsexe38f D†
450デフォルトの名無しさん
2016/02/22(月) 12:16:25.94ID:Y1bHL8fN D<0
451デフォルトの名無しさん
2016/02/27(土) 03:16:45.72ID:GUJ5wO/X iota(-10,1)やrecurrence!(q{ -n })(0)がintになるのに
sequence!(q{ -n })だけuintで負の値を使えないんですがこれって何か理由があるんですかね?
sequence!(q{ -n })だけuintで負の値を使えないんですがこれって何か理由があるんですかね?
452デフォルトの名無しさん
2016/02/29(月) 00:18:12.07ID:zsA7yhFD >>451 ソース見た感じ、
recurrence!(q{-n})(0) は 0 の型とってる→int
sequence!(q{-n}) は -n の型とってる、ここで n の型は size_t → size_t
ってことみたい。
recurrence!(q{-n})(0) は 0 の型とってる→int
sequence!(q{-n}) は -n の型とってる、ここで n の型は size_t → size_t
ってことみたい。
453デフォルトの名無しさん
2016/02/29(月) 07:53:56.99ID:9aTNra24 alias compute = binaryFun!(fun, "a", "n");
alias ElementType = typeof(compute(State.init, cast(size_t) 1));
で、nにcast(size_t)1を入れてsize_tになってるんですね
単に気になっただけなんですけど
alias ElementType = typeof(compute(State.init, cast(size_t) 1));
で、nにcast(size_t)1を入れてsize_tになってるんですね
単に気になっただけなんですけど
454デフォルトの名無しさん
2016/02/29(月) 15:44:30.93ID:iGEmA67j 配列の中の最大値を探すときって普通どうやるんでしょうか
enum arr = [3, 1, 4, 1, 5, 9, 2];
aliasSeqOf!arr.max.writeln; // 要std.metaなのと定数でないとダメ
arr.minPos!
enum arr = [3, 1, 4, 1, 5, 9, 2];
aliasSeqOf!arr.max.writeln; // 要std.metaなのと定数でないとダメ
arr.minPos!
455デフォルトの名無しさん
2016/02/29(月) 15:52:25.48ID:iGEmA67j なんか途中で切れた
minPosとか使ってるんですが、しっくりこなくて
minPosとか使ってるんですが、しっくりこなくて
456デフォルトの名無しさん
2016/02/29(月) 16:26:00.44ID:VNz3PeoZ457デフォルトの名無しさん
2016/02/29(月) 22:57:05.78ID:6Vt2kK/P リデュースリユースリサイクル♪
458デフォルトの名無しさん
2016/03/01(火) 00:52:26.74ID:joyDtek2 LDC 1.0αでとる。
459デフォルトの名無しさん
2016/03/01(火) 21:04:14.81ID:s5WMaGjg void hoge(T)(out T t) {...}
uint x;
hoge(x); // コンパイル通る
int[] arr;
hoge(arr.length); // コンパイルエラー(Error: template hoge cannot deduce function from argument types !()(uint), candidates are:)
arr.lengthでエラーが出るのはどういう理屈なんですか?
uint x;
hoge(x); // コンパイル通る
int[] arr;
hoge(arr.length); // コンパイルエラー(Error: template hoge cannot deduce function from argument types !()(uint), candidates are:)
arr.lengthでエラーが出るのはどういう理屈なんですか?
460デフォルトの名無しさん
2016/03/01(火) 21:12:38.53ID:oyuxQPKV arr.lengthが右辺値を返すから?
461デフォルトの名無しさん
2016/03/01(火) 21:23:46.68ID:CYOvNsDD out が付いてるなら当然としか
■ このスレッドは過去ログ倉庫に格納されています
