プログラミング言語 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
466459
2016/03/02(水) 21:10:33.37ID:Py15QFNz lengthをいじりたいというより、out引数を持つ関数を使いたかったんですよね。
なのでこうしました。
uint lenght;
hoge(length);
arr.length = length;
なのでこうしました。
uint lenght;
hoge(length);
arr.length = length;
468デフォルトの名無しさん
2016/03/07(月) 16:22:17.87ID:nbAKle/L 遅い、遅すぎる
時代は既に reduce から fold に変わろうとしているのに
時代は既に reduce から fold に変わろうとしているのに
469デフォルトの名無しさん
2016/03/07(月) 17:38:25.23ID:hzTv2Fg2 とはいえまだマージされただけでリリースはされてないし
内部でreduce使ってるから無くなることはないだろうけどな
内部でreduce使ってるから無くなることはないだろうけどな
470デフォルトの名無しさん
2016/03/07(月) 21:13:14.18ID:ZACCB8Ww struct S { int[] arr; }
S s1;
...
S s2 = s1;
構造体のデフォのコピーコンストラクトを使った場合、メンバarrはシャローコピーされますよね?
ディープコピーしたい場合、コピーコンストラクタを書き換えるか、ディープコピー用のメンバ関数を書く方法が思いつきますけど、
もっと手軽な方法はないでしょうか?
S s1;
...
S s2 = s1;
構造体のデフォのコピーコンストラクトを使った場合、メンバarrはシャローコピーされますよね?
ディープコピーしたい場合、コピーコンストラクタを書き換えるか、ディープコピー用のメンバ関数を書く方法が思いつきますけど、
もっと手軽な方法はないでしょうか?
471デフォルトの名無しさん
2016/03/07(月) 22:22:23.50ID:hzTv2Fg2 前者はpostblitを指してるんだと思うけど、すでに十分手軽じゃね?
this(this){arr=arr.dup;}
ところでマニュアルによればpostblitは初期化時の話らしいけど、代入時にも呼ばれるのは何故だ
this(this){arr=arr.dup;}
ところでマニュアルによればpostblitは初期化時の話らしいけど、代入時にも呼ばれるのは何故だ
472デフォルトの名無しさん
2016/03/07(月) 22:31:36.23ID:ZACCB8Ww473デフォルトの名無しさん
2016/03/07(月) 22:49:33.64ID:hzTv2Fg2474デフォルトの名無しさん
2016/03/08(火) 00:13:35.69ID:P+r5NzGC475デフォルトの名無しさん
2016/03/08(火) 00:30:29.31ID:y3RNmON1476デフォルトの名無しさん
2016/03/08(火) 00:43:55.17ID:P+r5NzGC >>475
おお、仕事が速いですね。
おお、仕事が速いですね。
477デフォルトの名無しさん
2016/03/12(土) 05:14:08.80ID:/9wKb/bF478デフォルトの名無しさん
2016/03/15(火) 00:58:06.47ID:sgjiEx6Z VS2013とLDCでビルドしたら、
LINK : fatal error LNK1104: cannot open file 'legacy_stdio_definitions.lib'
というエラーが出たんですけど、原因は何が考えられますか?
LINK : fatal error LNK1104: cannot open file 'legacy_stdio_definitions.lib'
というエラーが出たんですけど、原因は何が考えられますか?
480デフォルトの名無しさん
2016/03/15(火) 02:36:06.05ID:sgjiEx6Z481デフォルトの名無しさん
2016/03/15(火) 07:36:35.68ID:vxrFHeSb >>478
デフォルトは VS2015 の設定だから
etc/ldc2.conf の該当行 を書き換えてくれってどっかに書いてあった
"-Llegacy_stdio_definitions.lib" とその前の行のカンマを消せばいい
デフォルトは VS2015 の設定だから
etc/ldc2.conf の該当行 を書き換えてくれってどっかに書いてあった
"-Llegacy_stdio_definitions.lib" とその前の行のカンマを消せばいい
482デフォルトの名無しさん
2016/03/15(火) 15:54:15.40ID:sgjiEx6Z >>481
ldc.confにlegacy_stdio_definitions.libはありませんでした。
色々、調べてて気づいたんですけど、LDCを使うにはLLVMもインストールしないといけないですか?
LLVMのバイナリは公開されていないみたいだし、ビルドしないといけないとなると面倒ですね。
日本語の解説サイトもなさそうだし難易度が高い。
ldc.confにlegacy_stdio_definitions.libはありませんでした。
色々、調べてて気づいたんですけど、LDCを使うにはLLVMもインストールしないといけないですか?
LLVMのバイナリは公開されていないみたいだし、ビルドしないといけないとなると面倒ですね。
日本語の解説サイトもなさそうだし難易度が高い。
483デフォルトの名無しさん
2016/03/15(火) 19:09:38.41ID:vxrFHeSb 忘れてた VS2015 以外のバージョンで動かすには
LDC をその設定で再構築してくれと書いてあった
今探してもどこだったか見当たらないけど…
たぶん VS2015 入れるのが一番簡単
LDC をその設定で再構築してくれと書いてあった
今探してもどこだったか見当たらないけど…
たぶん VS2015 入れるのが一番簡単
484デフォルトの名無しさん
2016/03/15(火) 22:12:49.10ID:sgjiEx6Z >>483
なるほど・・・VS2015なら簡単でしたか。
なるほど・・・VS2015なら簡単でしたか。
485デフォルトの名無しさん
2016/03/18(金) 15:04:55.64ID:adG1WSEK D言語でGCが動かなせない環境(組み込み環境)で
クラスを使ったコードを走らせるために手動でメモリ管理をする(配置new)
みたいなC++的な使い方できますのん?
もっと具体的に言うと、
メモリ管理クラスをD言語で書きたいんだけど・・・
できれば、ほかの言語(C/C++)を混ぜたくない。
Dでこの望みは叶えられる?
GCが完璧な言語で何を言ってるんだって話だけど
C言語とABI互換バイナリが吐ける言語でかつ、きれいな構文のDはかなり魅力だから、つい。
クラスを使ったコードを走らせるために手動でメモリ管理をする(配置new)
みたいなC++的な使い方できますのん?
もっと具体的に言うと、
メモリ管理クラスをD言語で書きたいんだけど・・・
できれば、ほかの言語(C/C++)を混ぜたくない。
Dでこの望みは叶えられる?
GCが完璧な言語で何を言ってるんだって話だけど
C言語とABI互換バイナリが吐ける言語でかつ、きれいな構文のDはかなり魅力だから、つい。
486デフォルトの名無しさん
2016/03/19(土) 16:14:28.14ID:fGh+hC5f487デフォルトの名無しさん
2016/03/19(土) 16:46:55.65ID:pnhuGA3J >>486
あざます!!!!
ちとググってみましたけど
WikiにExplicit Class Instance Allocationっておもいっきり書いてありました・・・
手元の環境でもそれ書いたら動いたので
組み込み先の環境でもコレができるか試してみます!
あざます!!!!
ちとググってみましたけど
WikiにExplicit Class Instance Allocationっておもいっきり書いてありました・・・
手元の環境でもそれ書いたら動いたので
組み込み先の環境でもコレができるか試してみます!
488デフォルトの名無しさん
2016/03/19(土) 17:36:21.89ID:emjvs9Sn foldとかHaskellみたい
いいぞもっとやれ
実行時のパターンマッチとかどんどんやって
いいぞもっとやれ
実行時のパターンマッチとかどんどんやって
489デフォルトの名無しさん
2016/03/19(土) 17:51:51.55ID:szPk7uBU パターンマッチは本当に欲しい
castSwitchは型で分岐するだけで不満が残る
ついでにAlgebraicもいい感じにしてほしい
castSwitchは型で分岐するだけで不満が残る
ついでにAlgebraicもいい感じにしてほしい
490デフォルトの名無しさん
2016/03/19(土) 19:52:53.93ID:fGh+hC5f Cライクな構文でパターンマッチをどう表現するか?
dropThree :: [a] -> [a]
dropThree (_:_:_:xs) = xs
dropThree _ = []
dropThree :: [a] -> [a]
dropThree (_:_:_:xs) = xs
dropThree _ = []
491デフォルトの名無しさん
2016/03/19(土) 21:01:17.80ID:vRfO35T6 C#だと、次のバージョンでパターンマッチ採用されるみたいね
https://github.com/dotnet/roslyn/blob/future/docs/features/patterns.md
https://github.com/dotnet/roslyn/blob/future/docs/features/patterns.md
492デフォルトの名無しさん
2016/03/19(土) 23:58:06.13ID:fGh+hC5f493デフォルトの名無しさん
2016/03/20(日) 00:15:59.18ID:sW9GrChn 今試してて気づいた
if (auto a = 0 < (cast(A)x).b, cast(A)x) {...}
は通るんだね。キャスト2回いるけど。
if (auto a = 0 < (cast(A)x).b, cast(A)x) {...}
は通るんだね。キャスト2回いるけど。
494デフォルトの名無しさん
2016/03/20(日) 00:42:09.88ID:sW9GrChn ...と思ったけど違うな。バグ臭い。
http://dpaste.dzfl.pl/8e56a6c3d640
http://dpaste.dzfl.pl/8e56a6c3d640
495デフォルトの名無しさん
2016/03/20(日) 01:02:17.46ID:sW9GrChn あ、バグですらないや。結果を使わないからカンマの前半が評価されてないだけだ。
スレ汚しでしたorz
スレ汚しでしたorz
496489
2016/03/20(日) 04:59:55.44ID:270cchqR >>492
考え直してみたら、俺が欲しいのは、クラス以外にも対応したcastSwitchと多重代入かなと思った
最初に欲しかったのは定数もパターンとして扱えるようなものだけど、それ自体は条件分岐で事足りる
考え直してみたら、俺が欲しいのは、クラス以外にも対応したcastSwitchと多重代入かなと思った
最初に欲しかったのは定数もパターンとして扱えるようなものだけど、それ自体は条件分岐で事足りる
497デフォルトの名無しさん
2016/03/21(月) 08:32:26.92ID:PBSyTjzr さあ早く shibuyad とやらの潜入リポート作成に戻るんだ
498デフォルトの名無しさん
2016/03/22(火) 18:21:28.75ID:9L67FCyK new int[][](10,10)
なんてあったんだな・・・今の今まで律儀にループしてたわ・・・
恥ずかしい
なんてあったんだな・・・今の今まで律儀にループしてたわ・・・
恥ずかしい
499デフォルトの名無しさん
2016/03/24(木) 06:29:39.15ID:JYtPWttv レスポンシブなウェブページになってるね
https://dlang.org/
https://dlang.org/
500デフォルトの名無しさん
2016/03/24(木) 18:45:07.21ID:dsBEx2Ez まるで今時のプログラミング言語っぽいじゃないか!
501デフォルトの名無しさん
2016/03/26(土) 15:48:00.20ID:Hp90Cudb 未来の言語だろ
502デフォルトの名無しさん
2016/03/26(土) 18:28:21.07ID:ZDevVvUe 本来の言語
503デフォルトの名無しさん
2016/04/06(水) 16:38:36.98ID:goAIGnqr 2.071
deprecation特盛り一丁
deprecation特盛り一丁
504デフォルトの名無しさん
2016/04/17(日) 20:07:45.76ID:jaxl7tJu Dってエルミート行列の固有値と固有ベクトルを下か上の三角行列から出してくれるライブラリある?
505デフォルトの名無しさん
2016/04/17(日) 23:05:34.24ID:Rgu4hbC0 知らないが、
「Cでそれ扱ってるライブラリ」→「Dのバインディング」の順番で探すと見つかるかもしれない。
「Cでそれ扱ってるライブラリ」→「Dのバインディング」の順番で探すと見つかるかもしれない。
506デフォルトの名無しさん
2016/04/18(月) 14:54:59.76ID:AtRZD2WH そんな劣化バインディングの出てくる場面じゃないと思う
Dよお前の力はその程度かッ
Dよお前の力はその程度かッ
507デフォルトの名無しさん
2016/04/18(月) 15:40:47.97ID:NxXedIF3 バインディングに劣化とそうじゃないものの区別方法を教えれ
508デフォルトの名無しさん
2016/04/18(月) 15:56:31.40ID:wndeF4nL EUC-JPの文字列をUTF-8にエンコードするにはどうやればいいですか?
509デフォルトの名無しさん
2016/04/18(月) 16:29:48.39ID:4lmkHLOP >>508
iconvかicuのバインディングを探します
iconvかicuのバインディングを探します
510デフォルトの名無しさん
2016/04/18(月) 16:39:21.91ID:wndeF4nL511デフォルトの名無しさん
2016/04/18(月) 23:04:02.22ID:8LbOm6LB512デフォルトの名無しさん
2016/04/19(火) 15:15:23.43ID:DoDYnfhi EUC->(簡単)->JIS->(どのAPIがいい?)->UNICODE->(簡単)->UTF8
513デフォルトの名無しさん
2016/04/27(水) 10:07:10.53ID:h7nUlsO3 writeにクラスを渡した時クラス名だけじゃなくて中身も表示させたいんだが何に手を加えればいいんだろか?
514デフォルトの名無しさん
2016/04/27(水) 10:09:28.75ID:Nq/5t8Sv toStringオーバーライドすればいい
515デフォルトの名無しさん
2016/04/27(水) 10:27:53.40ID:KQtnTftA516デフォルトの名無しさん
2016/04/30(土) 12:14:38.56ID:XHbnmWX8 D言語でクラスを使って dmd -c Dソース でコンパイルだけして
GCC(mingw)でWindows用dllをクロスコンパイルする時、リンカが参照できないエラー吐くけども
参照できないメソッドはこれ
_D9invariant12_d_invariantFC6ObjectZv
_d_assert_msg
この参照できないメソッドが入ってるライブラリとその依存関係にあるライブラリって
どのファイルか分かります?
GCC(mingw)でWindows用dllをクロスコンパイルする時、リンカが参照できないエラー吐くけども
参照できないメソッドはこれ
_D9invariant12_d_invariantFC6ObjectZv
_d_assert_msg
この参照できないメソッドが入ってるライブラリとその依存関係にあるライブラリって
どのファイルか分かります?
517デフォルトの名無しさん
2016/04/30(土) 12:48:14.66ID:RhLYi0Bf そうやって混ぜてコンパイルするのは無理…で普通は済む問題なんだけど
何がしたいのかしら
何がしたいのかしら
518デフォルトの名無しさん
2016/04/30(土) 14:53:50.70ID:XHbnmWX8 >>517
https://github.com/kubasz/uefi-d
これを参考に、UEFI AppをD言語で作りたいんだけども、
クラスを使うとリンクエラーでてしまい と言う話で、>>516
やっぱり、Dのクラスの仕組み上、こういう変な使い方するのは厳しいかな
https://github.com/kubasz/uefi-d
これを参考に、UEFI AppをD言語で作りたいんだけども、
クラスを使うとリンクエラーでてしまい と言う話で、>>516
やっぱり、Dのクラスの仕組み上、こういう変な使い方するのは厳しいかな
519デフォルトの名無しさん
2016/04/30(土) 16:19:04.96ID:FuZy8SxD サンプルは再現出来てんの?
520デフォルトの名無しさん
2016/04/30(土) 17:06:09.96ID:XHbnmWX8 >>519
サンプル自体ビルドは通ってQEMUで動作確認済みです。
確認済みのサンプルソースに、追加で適当なクラス
(プリミティブ型(検証時はintのみ)のメンバ1つとコンストラクタ、セッタ、ゲッタのみ)とか
プリミティブ型(同上)メンバのみ構造体を定義すると
リンクしないといけない何かが足りなくなるらしいと言うところです
サンプル自体ビルドは通ってQEMUで動作確認済みです。
確認済みのサンプルソースに、追加で適当なクラス
(プリミティブ型(検証時はintのみ)のメンバ1つとコンストラクタ、セッタ、ゲッタのみ)とか
プリミティブ型(同上)メンバのみ構造体を定義すると
リンクしないといけない何かが足りなくなるらしいと言うところです
521デフォルトの名無しさん
2016/04/30(土) 17:18:34.76ID:RhLYi0Bf それなら
-debug -release のオプションの不一致かな
druntime の debugあり/なし バージョンが分かれてるのかな
-debug -release のオプションの不一致かな
druntime の debugあり/なし バージョンが分かれてるのかな
522デフォルトの名無しさん
2016/05/01(日) 11:23:20.12ID:tKi6j9CT 匿名通信(Tor、i2p等)ができるファイル共有ソフトBitComet(ビットコメット)みたいな、
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
・
BitTorrentがオープンソースで開発されています
言語は何でも大丈夫だそうなので、P2P書きたい!って人居ませんか?
Covenantの作者(Lyrise)がそういう人と話したいそうなので、よろしければツイートお願いします
https://twitter.com/Lyrise_al
ちなみにオイラはCovenantの完成が待ち遠しいプログラミングできないアスペルガーw
The Covenant Project
概要
Covenantは、純粋P2Pのファイル共有ソフトです
目的
インターネットにおける権力による抑圧を排除することが最終的な目標です。 そのためにCovenantでは、中央に依存しない、高効率で検索能力の高いファイル共有の機能をユーザーに提供します
特徴
Covenant = Bittorrent + Abstract Network + DHT + (Search = WoT + PoW)
接続は抽象化されているので、I2P, Tor, TCP, Proxy, その他を利用可能です
DHTにはKademlia + コネクションプールを使用します
UPnPによってポートを解放することができますが、Port0でも利用可能です(接続数は少なくなります)
検索リクエスト、アップロード、ダウンロードなどのすべての通信はDHT的に分散され、特定のサーバーに依存しません
・
523デフォルトの名無しさん
2016/05/01(日) 12:30:45.52ID:5H9PV7Hp 年収いくら?
パナマに振り込み可能?
パナマに振り込み可能?
524デフォルトの名無しさん
2016/05/01(日) 14:08:25.32ID:vpP9ivFq 新規性がない
525デフォルトの名無しさん
2016/05/02(月) 12:22:10.19ID:IEVsN46J >>521
とりあえず、Objectのスタブを見つけたので、試しにコンパイルだけしてみました。
https://github.com/JinShil/D_Runtime_ARM_Cortex-M_study/wiki/1.3-Structs
これをそのままobject.dにコピペして、コンパイルだけ通そうとしたんですが
dmd -v -c object.d
binary dmd
version v2.070.2
config /etc/dmd.conf
parse object
importall object
semantic object
semantic2 object
semantic3 object
Error: undefined identifier 'Error'
Error: undefined identifier 'Error'
ってことなので、
class Error{
this(string){}
}
こんな感じのを作って、再度ビルドしたら、DMDが保護例外で落ちたんですが
D言語わからないですけど、多分CTFEが動いたんですかね?
Errorクラスの最小実装ってどうすればいいかわかります?
とりあえず、Objectのスタブを見つけたので、試しにコンパイルだけしてみました。
https://github.com/JinShil/D_Runtime_ARM_Cortex-M_study/wiki/1.3-Structs
これをそのままobject.dにコピペして、コンパイルだけ通そうとしたんですが
dmd -v -c object.d
binary dmd
version v2.070.2
config /etc/dmd.conf
parse object
importall object
semantic object
semantic2 object
semantic3 object
Error: undefined identifier 'Error'
Error: undefined identifier 'Error'
ってことなので、
class Error{
this(string){}
}
こんな感じのを作って、再度ビルドしたら、DMDが保護例外で落ちたんですが
D言語わからないですけど、多分CTFEが動いたんですかね?
Errorクラスの最小実装ってどうすればいいかわかります?
526デフォルトの名無しさん
2016/05/02(月) 15:11:51.74ID:aR8AOrvI どつぼにそれてるパターン?
527デフォルトの名無しさん
2016/05/02(月) 17:55:15.75ID:IEVsN46J528デフォルトの名無しさん
2016/05/02(月) 18:01:06.10ID:aR8AOrvI 良かった
良かった
良かった
529デフォルトの名無しさん
2016/05/04(水) 16:57:34.57ID:3BQvrgH5 DConf 2016 ustream
https://www.sociomantic.com/blog/2016/05/follow-dconf-2016-in-real-time/#.VymqqVWLQ7Y
Twitter
#dconf
https://www.sociomantic.com/blog/2016/05/follow-dconf-2016-in-real-time/#.VymqqVWLQ7Y
#dconf
530デフォルトの名無しさん
2016/05/04(水) 18:15:35.48ID:cRuVDbfJ GJ
531デフォルトの名無しさん
2016/05/05(木) 10:11:25.96ID:l/2+Jb+M532デフォルトの名無しさん
2016/05/06(金) 20:12:27.55ID:7fiYERlP Dって長方形配列を動的に確保するにはどうするのがベストなんでしょう?
533デフォルトの名無しさん
2016/05/06(金) 22:45:34.04ID:W1xQbJku534デフォルトの名無しさん
2016/05/07(土) 12:22:21.49ID:w1sNmh/I >>533
おお、この記法でギザギザ配列回避できるのか!ありがとうございます
おお、この記法でギザギザ配列回避できるのか!ありがとうございます
535デフォルトの名無しさん
2016/05/08(日) 14:44:32.46ID:sTrGOFZo 多次元配列は最近こういうのもある
http://dlang.org/phobos/std_experimental_ndslice.html
http://dlang.org/phobos/std_experimental_ndslice.html
536デフォルトの名無しさん
2016/05/12(木) 09:37:33.44ID:3GMYNf4t537デフォルトの名無しさん
2016/05/12(木) 14:42:51.13ID:yoZypm21 d言語の日本語情報は古くて、結構アテにならない
538デフォルトの名無しさん
2016/05/12(木) 15:10:26.64ID:9ZRvi6Dg それまだ入ってから半年も経ってないし
experimental な上に注目度高いからガンガン変わるよ
experimental な上に注目度高いからガンガン変わるよ
539デフォルトの名無しさん
2016/05/13(金) 09:27:38.80ID:XXFnZH8x DerelictAllegro用のdllファイルがAllegro公式漁ってもみつからねぇ
いっそ同封してくれりゃいいのに
いっそ同封してくれりゃいいのに
540デフォルトの名無しさん
2016/05/13(金) 10:05:11.23ID:+7L1Kkkt 公式配布のdllでダメなの?
541デフォルトの名無しさん
2016/05/14(土) 11:24:42.35ID:r8zKr16p542デフォルトの名無しさん
2016/05/15(日) 12:10:35.85ID:5BLNb8Jh dってpythonでやれるように関数の引数としてクラスをとることは出来ますか?
543デフォルトの名無しさん
2016/05/15(日) 13:23:09.57ID:0JYIjYbN 型と値は別物なので、Pythonのtypeクラスみたいなものは無いはず
テンプレートでは型を引数に取れるからそれで大概足りるしな
テンプレートでは型を引数に取れるからそれで大概足りるしな
544デフォルトの名無しさん
2016/05/15(日) 13:26:52.30ID:/LAeaQVK そのままのものはなくても
__traits/std.traits を隅々まで見るとだいたいのことは出来る
__traits/std.traits を隅々まで見るとだいたいのことは出来る
545デフォルトの名無しさん
2016/05/15(日) 16:23:19.03ID:5BLNb8Jh なるほどdでは型を引数にしたかったらテンプレートを使うんですね
わかりましたありがとうございます
わかりましたありがとうございます
546デフォルトの名無しさん
2016/05/16(月) 18:01:26.97ID:SzBm3KOG すいません、>>535のndsliceを包含したクラスでnumpyのように動的にshapeを変えられるクラスを作ることは可能でしょうか?
slicedの引数が動的配列ではいけないせいでスライスの形をメンバ変数として持てず、Sliceの次元がコンパイル時に決定されていないといけないせいでslicedの結果をメンバ変数として持てなくて困っております。
slicedの引数が動的配列ではいけないせいでスライスの形をメンバ変数として持てず、Sliceの次元がコンパイル時に決定されていないといけないせいでslicedの結果をメンバ変数として持てなくて困っております。
547デフォルトの名無しさん
2016/05/16(月) 20:47:31.03ID:1yYFRP5Q >>546 同じインスタンスに対してshapeをかえるのはむりっぽいとおもわれ
決め打ちできる所までtemplate化していくしかないきがす
https://dpaste.dzfl.pl/32747b208179
決め打ちできる所までtemplate化していくしかないきがす
https://dpaste.dzfl.pl/32747b208179
548デフォルトの名無しさん
2016/05/17(火) 08:13:05.26ID:8mvnsosn549デフォルトの名無しさん
2016/05/18(水) 07:28:31.57ID:tzs1T2aJ テキストファイルをstringに読み込んでstd.string.indexOfを使うと
Invalid UTF sequence: e5x a3x - Attempted to decode past the end of string (at index 2)
という実行エラーが出ます。
テキストファイル自体は、TeraPadで開くとUTF-8として自動認識されているのですが、
D言語の標準ライブラリが認識してくれない原因は何が考えられますか?
Invalid UTF sequence: e5x a3x - Attempted to decode past the end of string (at index 2)
という実行エラーが出ます。
テキストファイル自体は、TeraPadで開くとUTF-8として自動認識されているのですが、
D言語の標準ライブラリが認識してくれない原因は何が考えられますか?
550デフォルトの名無しさん
2016/05/18(水) 13:02:57.20ID:yAlr13Jm エラーメッセージそのまま
文字列が中途半端なところで終わってる
読み込むサイズが足りないか、元々ファイルがおかしくてTeraPadが開く時に自動で直してくれてるのか
文字列が中途半端なところで終わってる
読み込むサイズが足りないか、元々ファイルがおかしくてTeraPadが開く時に自動で直してくれてるのか
551デフォルトの名無しさん
2016/05/18(水) 13:51:37.18ID:tzs1T2aJ552デフォルトの名無しさん
2016/05/22(日) 07:52:01.31ID:vou34ySW D言語の複素数ってなんか組み込みのとライブラリのがあってしかも行き来が不自由なんだけどどうなってんだこれ
553デフォルトの名無しさん
2016/05/22(日) 08:03:25.90ID:KneT9rID554デフォルトの名無しさん
2016/05/22(日) 08:10:54.35ID:AqdMtFt7 組み込みで使えるの便利だったのに……
555デフォルトの名無しさん
2016/05/22(日) 09:20:35.38ID:KneT9rID 「ライブラリで実現できる」「言語仕様を小さくする」とかで
機能追加が却下されたり言語の機能が削られたりしてるが
「できる」じゃなくて本当にライブラリ側でやった方が良いのかどうか検討してからにして欲しい
言語仕様の大きさなんてユーザには関係ないよ、必要な部分しか使わないんだから
機能追加が却下されたり言語の機能が削られたりしてるが
「できる」じゃなくて本当にライブラリ側でやった方が良いのかどうか検討してからにして欲しい
言語仕様の大きさなんてユーザには関係ないよ、必要な部分しか使わないんだから
556デフォルトの名無しさん
2016/05/22(日) 10:51:13.93ID:cWYsuk0t 言語仕様が小さくなってフットワークが軽くなる(== 破壊的変更が増える)
ならそれはユーザ体験の向上であろう。
さあはやく俺のstd.math.expi多用したコードをはじくのだ!
ならそれはユーザ体験の向上であろう。
さあはやく俺のstd.math.expi多用したコードをはじくのだ!
557デフォルトの名無しさん
2016/05/22(日) 11:23:25.91ID:7hG4VCWt >>555
つまりどういうことです?
つまりどういうことです?
558デフォルトの名無しさん
2016/05/22(日) 14:41:12.39ID:P1iBYgIC ライブラリでやるより言語仕様充実して欲しい
559デフォルトの名無しさん
2016/05/22(日) 15:55:15.13ID:/FrpjXvP 初期の頃は、ライブラリより構文側でやった方が最適化できるというスタンスだったのに
いつの間に方針転換したんだろな
いつの間に方針転換したんだろな
560デフォルトの名無しさん
2016/05/22(日) 19:14:04.72ID:6Zib/w67 少なくとも>>553読む限りでは、需要がないと判断されただけに見えるけど
http://dlang.org/builtin.html でも最初に挙げられてる理由は「よく使われる」だし
8年間futureのままだったが、今月ようやく警告を出すPRが出たんだな
http://dlang.org/builtin.html でも最初に挙げられてる理由は「よく使われる」だし
8年間futureのままだったが、今月ようやく警告を出すPRが出たんだな
561デフォルトの名無しさん
2016/05/24(火) 11:51:00.77ID:ng4V60az562デフォルトの名無しさん
2016/05/24(火) 23:39:58.92ID:mrDJwu+1 Pythonでいうところの
np.array([[[i,j] for i in range(3)] for j in range(5)])
や
np.array([[i,j] for i in range(3) for j in range(5)])
はDではrangeやndsliceを使って一行くらいで表現できますか?
np.array([[[i,j] for i in range(3)] for j in range(5)])
や
np.array([[i,j] for i in range(3) for j in range(5)])
はDではrangeやndsliceを使って一行くらいで表現できますか?
563デフォルトの名無しさん
2016/05/25(水) 02:32:41.24ID:ywcZQvWe >>562
import std.algorithm, std.range;
3.iota.map!(a=>5.iota.map!(b=>[a,b])).join
ndslice使ってないけどこんなんですか
import std.algorithm, std.range;
3.iota.map!(a=>5.iota.map!(b=>[a,b])).join
ndslice使ってないけどこんなんですか
564デフォルトの名無しさん
2016/05/25(水) 13:31:47.54ID:7HlacyyV565デフォルトの名無しさん
2016/05/25(水) 14:49:41.33ID:JMqhkYJX Dとpythonは相性良い感じ
566デフォルトの名無しさん
2016/05/27(金) 18:54:45.88ID:a5zDK+Zd dmcの質問なんですけど
a->b(a);
みたいなオブジェクトaに対するインスタンスメソッドbの呼び出しを
#define M(x, y) x->y(x)
みたいに定義して
M(a, b);
と書きたいのですが
エラーになります
どうマクロを書くのが正しいのですか
a->b(a);
みたいなオブジェクトaに対するインスタンスメソッドbの呼び出しを
#define M(x, y) x->y(x)
みたいに定義して
M(a, b);
と書きたいのですが
エラーになります
どうマクロを書くのが正しいのですか
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 中国とロシアの爆撃機、日本周辺で共同飛行 [少考さん★]
- 「中国側も日本機のレーダーを感知していた」 中国メディアが報道 [♪♪♪★]
- 【YouTuber】バイク事故で入院のゆたぼん、振込で「お見舞金」募る [muffin★]
- 高市早苗首相、消費税減税に後ろ向き 足かせはレジシステム? 「責任ある積極財政」期待高いが [蚤の市★]
- 堀江貴文、キャッシュレス非対応の店にモヤッ 『PayPay』立ち上げの人物にまさかの直談判「現金決済しかできないんだけど…」 [冬月記者★]
- 低所得層のマクドナルド離れが深刻に 広がる「ファストフード格差」の真相 米国 [少考さん★]
- 防衛省、中国を完全論破www 「事前通告があったのは海自であって空自ではない」 高市早苗勝利 [175344491]
- 【悲報】JA「全然米が売れなくて倉庫を圧迫してる。助けて!」米卸売り業者「安売りしたら赤字になる…助けて!」 [802034645]
- 高市早苗さん、もう自決でしか許されないレベルになる [402859164]
- ✋🏿( ・᷄ὢ・᷅ )朝飯食ってから糞するのは無理でしょ……
- 【悲惨】中国軍が自衛隊に「事前通告」し自衛隊も返答した音声が公開されてしまうwwwこれは高市チェックアウトゕ★4 [597533159]
- (´・ω・`)おはようございます!!!!!!!!!朝だよ!!!!!!!!!!早く起きて!!!!!!!
