[過去ログ]
プログラミング言語 Rust 4 (1002レス)
プログラミング言語 Rust 4 http://mevius.5ch.net/test/read.cgi/tech/1507970294/
上
下
前次
1-
新
通常表示
512バイト分割
レス栞
抽出解除
レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索
歴削→次スレ
栞削→次スレ
過去ログメニュー
19: デフォルトの名無しさん [] 2017/10/17(火) 15:47:54.26 ID:wIRdElZt >>18 ブラウザのレンダリング速度ってcssをどれくらい速く捌けるかが大部分なんじゃないの? それ以外がRustになったところで速くなるといっても微々たるものなのでは... Servoって確かJSエンジンは従来のSpiderMonkeyをそのまま使ってるんだよね JSはGCあるし、DOM管理(Rust側のDOMオブジェクトとの連携)とかどうやってるのかよく分からんけど DOM管理の部分とかがRustになったらさらに速くなるのかな? 今のQuantumってGecko全体の何%くらいがRustになってるんだろう? http://mevius.5ch.net/test/read.cgi/tech/1507970294/19
58: デフォルトの名無しさん [sage] 2017/10/30(月) 21:06:32.26 ID:4dqnj7Aj >>35 まず、そのままのコードでは new() の返り値が move されるときに &x のアドレスが変わってしまう(実際には最適化で move されない だろうけど言語仕様的には)ので、そのコードがエラーになるのは正当。 なので x か Foo 全体を box 化する必要がある。ただ box 化すれば コンパイルが通るかというと、 box を deref して得られる参照は box の中身の寿命ではなく box 自身の寿命になるので、 transmute で チートする必要がある。 fn new() -> Self { let mut foo = Box:new(Foo { x: 32, x_ref: unsafe { mem::uninitialized() }, }); foo.x_ref = unsafe{ mem::transmute::<_, &'static _>(&foo.x) }; foo } http://mevius.5ch.net/test/read.cgi/tech/1507970294/58
124: デフォルトの名無しさん [sage] 2017/11/15(水) 18:58:57.26 ID:JXP4Zmpc ドワンゴがなんか作ってたね http://mevius.5ch.net/test/read.cgi/tech/1507970294/124
179: デフォルトの名無しさん [sage] 2017/11/19(日) 17:18:54.26 ID:PCwXQfC9 俺が言ってるのは、別にマルチスレッドで動かすわけでもないプログラムを所有権どうこうで弾いて、 本来正しく動くはずのプログラムがコンパイルエラーになり、つまりプログラミング言語としてはご法度の、 書けないプログラムが存在するってことについて異議を唱えてる http://mevius.5ch.net/test/read.cgi/tech/1507970294/179
248: デフォルトの名無しさん [] 2017/11/25(土) 05:40:17.26 ID:lbdvAXfn Javaも最初の頃はマトモに書いてもコンパイル通らなかったこといくらでもあったもんな。 http://mevius.5ch.net/test/read.cgi/tech/1507970294/248
286: デフォルトの名無しさん [sage] 2017/11/27(月) 01:55:07.26 RustでDPできないの? http://mevius.5ch.net/test/read.cgi/tech/1507970294/286
332: デフォルトの名無しさん [sage] 2017/11/29(水) 22:01:09.26 ID:pXSSowmn Readした結果はmutableでいいのにlet mutと書かなければならんの面倒 人によってはletで再宣言するのかな http://mevius.5ch.net/test/read.cgi/tech/1507970294/332
602: デフォルトの名無しさん [] 2018/01/08(月) 23:59:18.26 ID:y4IOANaR >>575, >>596 Rustは実装にもよるけど vtable はほとんど使わないはずだよ。 「ジェネリックとトレイト境界」を使えば引数に関しては静的ディスパッチが可能。 戻り値のほうは「ジェネリックとトレイト境界」じゃどうにもできないけど、 こっちはTagged Union 使えば大体は何とかなる。 現状、クロージャを返す場合はトレイトオブジェクトを使わざるを得ないけど、 クロージャを返すことって稀だし、そこまで気にするようなことじゃないと思ってる。 Cにはそもそもクロージャ自体が存在しないわけだし。C++でもクロージャは一般的じゃない。 smart pointer に関しても unique_ptr なら遅くはならない。(ほとんど誤差みたいなもの) だって unique_ptr は参照カウンタ使ってないし、Rallの仕組みを使って構造体(スタック)に ポインタを持ってデストラクタで解放を行ってるだけだから、その程度で遅くなるわけがない。 そして、Rustはデフォルトが C++の unique_ptr と同じだからやはり遅くはならないはず。 遅くなるのは内部で参照カウンタを使ってるshared_ptrとweek_ptrの2つ。 Rustの場合は参照カウンタは Rc or Arc として標準ライブラリに用意されてる。 まあ、Rustで Rc or Arc を全く使わずに作るってのはちょっと現実的じゃないけど。 まぁ、自分もそれほど詳しいわけじゃないけど、 vtableとsmart pointer はRustが遅い理由にはならないんじゃないかな。 RustがC, C++ と比べて少し遅い理由は他にあると思うよ。 個人的にはまだコンパイラが成熟してないってのが主な理由だと思ってるけど。 結構いっぱい書いたけど、やっぱり結論としてはC, C++, Rust の速度差は普通に使う分には気にすようなものじゃないと思う。 http://mevius.5ch.net/test/read.cgi/tech/1507970294/602
653: デフォルトの名無しさん [sage] 2018/01/13(土) 19:34:17.26 ID:aU8wc9zz エクセルは芸術 http://mevius.5ch.net/test/read.cgi/tech/1507970294/653
674: デフォルトの名無しさん [sage] 2018/01/14(日) 14:56:20.26 ID:ptHdDqnU >>663 勝手にブラックボックスを作るべきではない >>664 ブラックボックスなどないではないか >>668 プログラミングとはそういうものだ >>663への反論として>>664はわかるが>>668はなんかずれてると思うがな。 http://mevius.5ch.net/test/read.cgi/tech/1507970294/674
766: デフォルトの名無しさん [sage] 2018/01/24(水) 20:44:20.26 ID:FegGsCEt 数日前 Twitterに落ちてたWebFrameWorkの比較 https://github.com/tbrand/which_is_the_fastest http://mevius.5ch.net/test/read.cgi/tech/1507970294/766
817: デフォルトの名無しさん [] 2018/01/27(土) 06:21:41.26 ID:Iiinp9++ >>816 特にRustはこう見えて、まだ実績のない新しい技術は採用してないからな traitはHaskellの型クラスそのままだし 凶悪で有名なボローチェッカだってC++で既に確立されてる メモリオーナーシップの概念をコンパイラレベルで組み込んでみただけに過ぎない どれも既に他言語で実績のある(枯れた)ものしか使っていない Rust(錆)ってのはそういう意味もあるんだろう Rustは理想ばっかり追い求めたの言語とか揶揄されることがあるが意外と現実主義だよ http://mevius.5ch.net/test/read.cgi/tech/1507970294/817
878: デフォルトの名無しさん [sage] 2018/02/05(月) 10:17:07.26 ID:/K8k+grU >>876 LinuxカーネルのMLもクローズドってこと? ばかかな? http://mevius.5ch.net/test/read.cgi/tech/1507970294/878
メモ帳
(0/65535文字)
上
下
前次
1-
新
書
関
写
板
覧
索
設
栞
歴
スレ情報
赤レス抽出
画像レス抽出
歴の未読スレ
AAサムネイル
Google検索
Wikipedia
ぬこの手
ぬこTOP
0.040s