[表示 : 全て 最新50 1-99 101- 201- 301- 401- 501- 601- 701- 801- 901- 1001- 2ch.scのread.cgiへ]
Update time : 05/03 06:17 / Filesize : 249 KB / Number-of Response : 1028
[このスレッドの書き込みを削除する]
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧] [類似スレッド一覧]


↑キャッシュ検索、類似スレ動作を修正しました、ご迷惑をお掛けしました

プログラミング言語 Rust 4



1 名前:デフォルトの名無しさん [2017/10/14(土) 17:38:14.04 ID:uWD69LeP.net]
Mozilla発のプログラミング言語「Rust」のスレです

公式
https://www.rust-lang.org/
https://blog.rust-lang.org/
https://github.com/rust-lang/rust

前スレ
プログラミング言語 Rust 3
https://mevius.5ch.net/test/read.cgi/tech/1495343069/

231 名前:デフォルトの名無しさん [2017/11/22(水) 07:43:02.63 ID:h8Su9zOg.net]
>>220
キチガイ扱いしたのは事実だが、「僻み」といったことは一度もないぞ。
暇だったし、過去レス検索して確認したから間違いない。
被害妄想甚だしいぞ。

第一、どこがコンパイル通せないかを具体的に書いてくれたら指摘してやるって言ってるだろ。
お前「Cを移植したらコンパイルが通らん」としか言わねえんだもん。
そんな漠然とした情報じゃ指摘しようがねぇよ。

232 名前: mailto:sage [2017/11/22(水) 08:39:28.41 ID:MjBhGus4.net]
僻みでも何でもなく、そこがいいところなのになぁ、だと思うけどね。俺も。
コンパイルできてたCも、多分misra案件だとまず静的解析ではねられるか上司にしこたま怒られる類だと思うよ。

233 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 11:27:55.39 ID:ZStLkVDO.net]
rustってASTにアクセスできる仕組みってあったりするの?

234 名前:デフォルトの名無しさん [2017/11/22(水) 11:41:33.74 ID:h8Su9zOg.net]
>>226
何がしたいの?
nightly なら syntax クレートとか使えばできると思う。
使ったことないからよく分からんけど。
stableじゃ出来ないんじゃないかな?たぶん。。。
誰かもっと詳しい人いる?

235 名前:デフォルトの名無しさん [2017/11/22(水) 11:59:25.37 ID:ypfVoZmJ.net]
>>220
で、どういう言語なら良いの?
またダンマリか、話題逸し?w

236 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 13:10:05.98 ID:DRQ8kz+8.net]
一般に普及した言語の仕事でクソ仕様にひどい目にあって
アンチになるというのなら理解できるが普及すらかまだわからない
新興言語でここまでアンチ活動する情熱の根源はどこだろう

237 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 14:44:44.34 ID:frJPN6Uq.net]
リアルで実害を被ると言及することすら嫌になるよ
粘着ができるのも個人的に気に食わないの範囲に留まってるからさ

238 名前:デフォルトの名無しさん mailto:sage [2017/11/22(水) 14:48:04.93 ID:/F1hTabp.net]
同じ事言ってるだけでかまってもらえるからだろ

239 名前:デフォルトの名無しさん [2017/11/22(水) 15:18:26.95 ID:h8Su9zOg.net]
>>231
キチガイ扱いされてでもかまってもらいたいとか、とんだドMだな。
それはむしろキチガイ扱いされていることを喜んでいるという認識でよろしいか?



240 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 03:56:47.06 ID:khAm3OAp.net]
一つの構造体の中にVecの実態とそのスライスを持たせるような事って出来ないのかな
バイト列を解析して、元データの実態と意味毎に分けたスライスを持たせたいなって思ったんだけど構造体作る時に同時に渡そうとしたら怒られる

とりあえず実態だけ持たせて特定の場所のスライスを返却するメソッドを持たせたけど設計的にこれでいいのかな?

241 名前:デフォルトの名無しさん [2017/11/23(木) 09:03:18.56 ID:XBDj7YCq.net]
>>229
普及した言語disると反論も大きいからねぇ。
かと言って余りにマイナー言語じやあ、

242 名前:disる場さえない。
なので自然に、中間の位置に有る言語に擦り寄ってくる。
昆虫の走光性みたいな知能。
[]
[ここ壊れてます]

243 名前:デフォルトの名無しさん [2017/11/23(木) 10:41:45.82 ID:e8aKLB85.net]
>>234
じゃあ、Goのほうに行ってくれればいいのに。

244 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 14:48:36.52 ID:8FY51a0F.net]
この言語やっぱ参照をもつのは愚策だな
Lifetimeでインタフェース複雑になるし、ボローチェッカーが無理ゲーになる

この言語用の設計しないと

245 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 14:51:03.97 ID:fSfOEtsA.net]
>>233 スライスも参照だからself-referential structになっちゃうからRustで素直には書けんよね。インデックスが今んところベストだと思うよ
その例だとバイト列に直接アクセスしない想定だと思うけど、個人的には解析結果は元データに従属したものと考えた方がスッキリするような気がする
&strに従属するCharIndices<'a>みたいな

246 名前:デフォルトの名無しさん mailto:sage [2017/11/23(木) 16:24:37.64 ID:ZTbvaPlF.net]
言語をdisる意味ってマジでわかんないよな。
素直に自分の好みの言語スレでマンセー言ってるほうが建設的。

247 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 01:49:02.02 ID:gTD5BNH2.net]
>>237
ありがと
やっぱり素直には出来ないよね

>>236 も書いてるけど、rustに適した設計をする必要がある感じだね

元々vm系言語やスクリプトばかりだったけど、rust始めてからスタックやヒープ、メモリコピーの発生とか意識するようになって今後の自分の為にもなってそうだ

248 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 14:20:50.17 ID:3aMUpzGJ.net]
Announcing Rust 1.22 (and 1.22.1)
https://blog.rust-lang.org/2017/11/22/Rust-1.22.html

try演算子がOptionにも対応したのが目玉か。
マイナーアップデートは mac の High Sierra 用。

249 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 18:14:00.14 ID:YCelFDj4.net]
1.RustからHTMLレンダリングエンジンを使いたい
  HTML&CSS等をレンダリングしてビットマップを得たい
2.HTMLレンダリングエンジンの動作をカスタマイズしたい
  不要な機能 JavaScript、ネットワークアクセス、audio or videoタグなど
  改変する機能 CSS等にプロパティを追加して任意の動作をさせる、画像等へ任意のフィルタを適用など
候補はBlink、Gecko、Servoあたりを考えていますがRustから使うならやはりServo?
いずれにしろ組み込んだ上でさらにカスタマイズするような資料は見つけられない・・・



250 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 18:25:01.95 ID:jGATcgg1.net]
>>241
そもそも何をしたいのか

251 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 19:14:48.32 ID:YCelFDj4.net]
>>242
カスタマイズできるラスタライザーが欲しい
日本語が使えて画像を挿入できて線を引いたり出来るもの
入力はHTML以外にPDFやPostScriptなども考えたけどジェネレートや
レンダリング、デバッグを考えるとHTMLがお手軽かなと・・・
今考えているフローはこんな感じ
別ツール→言語(出力結果を制御するメタデータ付き)→ラスタライザー→ビットマップ+α

252 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 19:53:35.95 ID:FoN8LV5Y.net]
あー分かった
ノベルゲームだろ?

253 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 21:33:57.00 ID:Vllmf8cf.net]
ノベルゲームだったらスクリプトやマルチメディア系のタグを殺す意味が判らない

254 名前:デフォルトの名無しさん mailto:sage [2017/11/24(金) 22:15:49.83 ID:bWSaVEO9.net]
>>243 librsvgでSVGをいじくり回すんじゃダメ?
・Rustバインディング(rsvg-rs)あり
・CSS,XSLT,DOM操作で加工可能

255 名前:243 mailto:sage [2017/11/25(土) 01:18:11.42 ID:P27kKgvI.net]
>>246
ありがとう。SVGって文字を扱えるんだっけ・・・って調べてみたら扱えるみたいですね
行けそうな気がしますがGPL/LGPL系のライセンスは使えるライブラリを制限するので避けたいです
C++だけどsvgrenとか?情報少なすぎてちゃんと動くのかすら不明。日本語フォントとか大丈夫なのだろうか

CでラップしてさらにRustでラップするようなのかな

256 名前:デフォルトの名無しさん [2017/11/25(土) 05:40:17.26 ID:lbdvAXfn.net]
Javaも最初の頃はマトモに書いてもコンパイル通らなかったこといくらでもあったもんな。

257 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 12:29:42.95 ID:r7AGpeaJ.net]
>>215
本気の荒らしと本気の自演と本気の無自覚アスペはいいのか…?
自分に都合がよいものだけが都合よく残るって都合よく考えるなって言われてるんだろ

258 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:02:12.25 ID:kotn+Cy/.net]
終わった話題に粘着する人キター

259 名前:デフォルトの名無しさん [2017/11/25(土) 13:14:26.95 ID:lbdvAXfn.net]
RustでGUIってイケてる?っていうか、GUIライブラリ多すぎるだろ・・、

GtkとQtメインでやってるけど、JavaFXもいいし、Pythonなんてバインディング沢山あるし、

Rustなんてやりだしたら、もうキリがないよ・・・



260 名前:デフォルトの名無しさん [2017/11/25(土) 13:15:21.53 ID:lbdvAXfn.net]
もうどれか一つでGUI決めてくれねえかな・・。スゲエ、面倒。

261 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:19:24.38 ID:ZL0yjpO8.net]
おじいちゃん、GUIはブラウザってきまったでしょ?

262 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:39:30.15 ID:alyoZhJV.net]
GUIはElectronみたいな方向に行ったほうがいいのかね

263 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 13:42:04.43 ID:kotn+Cy/.net]
Blink を Servo で置き換えた Selectron 来い

264 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 14:09:00.72 ID:OgtFvRib.net]
>>238
バカが調子に乗って新しい言語使って書き散らしたコードをメンテする経験をすればわかるようになるよ。

265 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 14:37:28.91 ID:mxSpQEHX.net]
言語じゃなくてそのバカをdisれよw

266 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 14:41:23.39 ID:P27kKgvI.net]
個人的に検討するGUIフレームワーク
簡単な奴→MS HTAやElectronなど。Webで使われている技術で実装できる
凝った奴→wxWidgets。高機能かつ高速、大抵の物は作れるが罠もある。もしくはAPI直叩き

昔結構悩んだけど結局上記あたりに落ち着いた。当時検討した物
GTK→LGPLウザイ。パフォーマンスが良くない(最近は良くなった?)
Tk→低機能で作れない物がある。パフォーマンスが良くない
Qt→LGPLウザイ。パフォーマンスが良くない
JavaFX→パフォーマンスは悪くないがJREの初期化(≒起動)に時間がかかる

>>256
バカに無計画にコードを書かせているバカが問題なのであって言語が悪いわけではないだろう

267 名前: mailto:sage [2017/11/25(土) 14:57:49.91 ID:UfRnLBpA.net]
>>249
良いだろ。というか、それらを止めるのは現実的な方法では不可能。イエスマンを集めて楽しくワイワイ()になるぞ。

記名制のフォーラムでも本気の荒らしや本気のアスペや本気の無自覚は幾らでも居たんだから。

268 名前:デフォルトの名無しさん [2017/11/25(土) 17:24:23.29 ID:oLmjygAJ.net]
hyperってシングルスレッドなんなね
ベンチマークも結果がバラバラでよう分からん

269 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 21:02:37.96 ID:OgtFvRib.net]
>>258
まあそうなんだが、
言語によって弾けるとする linus の意見には賛同するところはある。



270 名前:デフォルトの名無しさん [2017/11/25(土) 21:09:22.03 ID:3zoUsuFj.net]
>>256
そういうやつって言語関係なく台無しにしてるんじゃね?

271 名前:デフォルトの名無しさん [2017/11/25(土) 21:22:20.34 ID:LOgLWN1+.net]
>>262
確かに、そういう奴ってどの言語使っても大体はクソコードを書くだろうな。
ただし、ベストプラクティスを教えてくれるやつがいるかどうかで差はあると思う。
新興言語はベストプラクティスを教えてくれる奴が極端に少ないから、余計にひどくなる。
対して、普及している言語は周りにベストプラクティスを教えてくれる人がいれば
バカでもある程度はマシなコードを書く(書くことを強制される)んじゃないかな。

272 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 21:32:32.35 ID:OgtFvRib.net]
>>262
関係ないんだが
「関係ない」ということを理解せずに無駄に新しい言語推しで
現場嵐してくることが問題。まずはてめーのコードを直せと。

273 名前:デフォルトの名無しさん mailto:sage [2017/11/25(土) 21:34:35.12 ID:WRH8mdq5.net]
そのバカと言語disに走るID:OgtFvRibは同レベルだよ。

274 名前:デフォルトの名無しさん [2017/11/25(土) 23:18:19.74 ID:3zoUsuFj.net]
>>265
単語の断片に反応してるだけの思い付き厨だろうな。

275 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 00:38:40.95 ID:FoFKguj9.net]
>>264
それって人事が無能なだけじゃあ。まぁ日本にそういう会社は多いんだけどな

276 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 01:44:59.31 ID:prdTxomD.net]
いうほど言語disに走ってる訳ではないけどね。
ただ言語disに走る気持ちは理解できるってこと。
他の言語disパターンとしては単純に自分があんまり知らんから
理解する時間の節約のための dis かな。

277 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 02:00:15.38 ID:zvEdo3BX.net]
rustは組み込み向けの新言語になると思ったけど、全然流行らんな
早くC++から脱したいのに

278 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 02:37:39.20 ID:8lbYkPLC.net]
昔の一部の組み込み系では製品の安定を求めるために
コンパイラのバージョンアップすら信用しない(=古いバージョンを使用し続ける)ことがあったなー

279 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 02:50:50.14 ID:FcDi9KjV.net]
『"(Rustが売りにしてるような部分に関して)良いコード"を書きたいと思っているh人』にとっては素晴らしい言語となる可能性の高い言語がRust
『"良いコード"の定義が違う人』にとっては
『"良いコード"を書きたいと思っているわけではない人』にとっては



280 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 02:52:44.07 .net]
Rustがコケると得するのは誰か

281 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 03:23:13.42 ID:FoFKguj9.net]
>>269
目的より手段を優先する日本じゃ無理だろw
どうしてもやりたいなら自分で立ち上がるしかないんじゃないか

282 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 03:57:56.67 ID:2SXqucAT.net]
>>273
rustが使いたいからその仕事を立ち上げるって明らかに手段と目的が入れ替わってますよね

283 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 09:03:05.51 ID:d0SJzNDY.net]
>>272
世界中のプログラマ
モジラのクソ提灯で言語未満の自称言語がひとつ減る訳だから

284 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 09:09:55.82 ID:4gwTKbSY.net]
この糖質「提灯」って言葉に執着してるね。

285 名前:デフォルトの名無しさん [2017/11/26(日) 11:03:05.21 ID:2p4Fc6MR.net]
>>276
執着というより単に語彙力がないだけかと。
コイツいつも大体同じようなことしか言ってないよ。

286 名前:デフォルトの名無しさん [2017/11/26(日) 11:11:18.98 ID:d1Efc0fJ.net]
>>263
ガウディ本とかで計算モデルを理解してれば、慣れてるという理由で合わない用途に無理矢理押し込もうとしないんだろうけどね。

287 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 11:35:06.02 ID:chAORxhD.net]
当人は必死だけどすっかり珍獣扱い

288 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 16:10:47.30 ID:F1AvYoB1.net]
少なくともswiftに採用しようとしてる機能を先行実装しているだけでも価値ある

289 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 22:44:13.85 ID:mC/sVuBh.net]
Rustが成功したから真似されたんじゃw
Apple信者さすがの言い草



290 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 22:54:59.36 ID:hn9uvYDF.net]
>>281
成功?成功ってなんだっけ?

291 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 23:15:44.20 ID:4gwTKbSY.net]
Swift の仕様変更と比べると、Rust のアップデートはかなり大人しいよな。

292 名前:デフォルトの名無しさん mailto:sage [2017/11/26(日) 23:36:42.57 ID:BDpjXZu3.net]
>>282
Rustのメモリ管理の仕組みが破綻してないことを証明しただろ!
しかも実務にも耐えてる
これが成功でないわけがない

293 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 01:38:36.80 ID:A6Q33Aj/.net]
>>284
循環グラフとか動的計画法とか書けない言語のどこが破綻がないのかいってみろ工作員

294 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 01:55:07.26 .net]
RustでDPできないの?

295 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 02:01:44.73 ID:Kmvld91s.net]
出来ない人がいるだけ

296 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 07:36:56.24 ID:30J1+TRs.net]
簡単にwasmコンパイルできる環境が整ってきたな
https://twitter.com/badboy_/status/934742946754244613
今、試したけど、Windowsでも動いた。
cargo-wa は動かんかったけど。

297 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 16:32:30.04 ID:UGzoAGct.net]
このエラーメッセージ、表示されるときと(当該箇所の修正をしていないのに)も関わらず表示されないときがある
Why?

error[E0605]: non-primitive cast: `{integer}` as `f64`

= note: an `as` expression can only be used to convert between primitive typ
es. Consider using the `From` trait


このエラーメッセージが表示されるのは
このエラーメッセージの示す箇所と全然無縁な箇所でコンパイルエラーが出たときに同時に表示される
そしてその他所であるコンパイルエラーを解消するとこのエラーメッセージも同時に消える

298 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 22:23:59.13 ID:0avMxfTz.net]
言語構文とツーリングを改善したRust 1.21
https://www.infoq.com/jp/news/2017/11/rust-1-21-released


「Rust 1.22」リリース
2017年11月27日17:00
https://mag.osdn.jp/17/11/27/170000

299 名前:デフォルトの名無しさん mailto:sage [2017/11/27(月) 22:38:51.64 ID:zgUQvI9i.net]
>>270
実際、g++ なんかはバージョン違うと相当挙動違うけどね。



300 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 01:05:16.27 ID:oL6iYiK7.net]
>>289 エラー時には情報足りなくてusize等に推論してるから、かなあ
構文チェック -> 型推論&チェック -> ボローチェッカーって順番でエラー出してる感じだけど、
関係無い場所でのエラーのせいでas f64してるローカル変数の型推論が不十分な可能性がある
型推論は重い処理だから何らかの最適化のせいでエラー時の挙動が分からないのではないか

301 名前:デフォルトの名無しさん [2017/11/28(火) 01:05:23.35 ID:YEKXo1x2.net]
Rustでイミュータブルに拘る人は何なの?ミュータブル使えよ

302 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 01:26:37.66 ID:9rdMMleK.net]
ミュータブルなんて怖いもの使えないよ〜><

303 名前:デフォルトの名無しさん [2017/11/28(火) 01:38:14.99 ID:YEKXo1x2.net]
ミュータブルにする必要のない箇所をイミュータブルにする
基本はミュータブルで使え、ミュータブルしてなかったらコンパイラが教えてくれる、そのときイミュータブルに変更すればいい

304 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 02:15:45.91 ID:OnNJR7WO.net]
ID:YEKXo1x2
完全に頭おかしいな

305 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 05:26:38.97 ID:9EzjspMa.net]
Rustでイミュータブルに拘るのは、TypeScriptで型付けることに拘るようなもん

306 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 06:36:09.88 ID:oe1VgQrD.net]
いミューダブルって、Cellの話をしているの?

307 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 06:49:49.21 ID:WfYnw+8u.net]
最近勉強し始めたんだけど、デフォでイミュータブルなのに思いのほかmutキーワード使う局面が多くて面食らってる。

308 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 06:56:41.60 ID:9EzjspMa.net]
イミュータブルに拘ると、Scalaとかでもそうだが、コピーだらけになる
コピーを恐れてるとイミュータブルを徹底できないよ

309 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 06:59:54.84 ID:bNHGW3XK.net]
コピーってmut並みに最適化してくれんの?



310 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 07:35:10.58 ID:oe1VgQrD.net]
あ、そういうこと。むりやりイミュータブルにする人たちがいるのか

311 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 09:28:24.80 ID:L9vMnZgT.net]
静的型付け初めてなんだけどいきなりRustは敷居高いだろうか

312 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 10:02:32.22 ID:hv4LFVGU.net]
>>300
> イミュータブルに拘ると、コピーだらけになる
> コピーを恐れてるとイミュータブルを徹底できない

例出してみ

313 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 12:38:41.40 ID:Q+QzpY2X.net]
イミュータブルとかメモリを富豪的に使うだけで性能はなんら上がらない、いかにもお偉いさんが机の上だけで考えたクソ手法だろ
なんでFortranやCが現役なのか考えたこともないやつがイミュータブルをもてはやす

314 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 12:59:41.96 ID:ZfJDlsQ3.net]
メモリが富豪的って、それお前の設計が悪いだけやで

315 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 13:02:27.70 ID:318e3gj2.net]
それは言い過ぎだろ

なんでもイミュータブルにするべきとは思ってないが、
並列性が必要なプログラムではイミュータブルは重要視しているよ

並列性が性能に直結しない(難しい)のは残念な話だけど……

316 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 13:47:27.77 ID:Q+QzpY2X.net]
>>306
値変えないならコピーするしかないだろ。それが富豪的でなくてなんなんだ?

>>307
並列計算で必要なのはイミュータビリティじゃなくて、変数スコープ分離と外部依存性の無いアルゴリズムだ

大方MPIすら使ったことないんだろうが、
共有リソースにアクセスしなきゃいけない並列プログラム組んでる時点で
設計が破綻してるとみなせると思うがそこんとこどう考える?

317 名前:デフォルトの名無しさん [2017/11/28(火) 14:26:25.75 ID:iQnRQ46Kx]
実際には、中卒でも、普通に、戒律壊せるやつがうろついてることを、まず認めろ

318 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 14:14:02.57 ID:hv4LFVGU.net]
このバカ、コンパイラが良きに計らうってことを知らんのか?

319 名前:デフォルトの名無しさん [2017/11/28(火) 14:27:41.71 ID:iQnRQ46Kx]
いらない仕事するな



320 名前:デフォルトの名無しさん [2017/11/28(火) 14:28:34.63 ID:iQnRQ46Kx]
バカと、優秀の二元論から解放されろ

321 名前:デフォルトの名無しさん [2017/11/28(火) 14:36:10.62 ID:iQnRQ46Kx]
大人になると、rustがダメなんだ、と頭ごなしに言ってみたくなるものだなぁ

322 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 14:26:19.19 ID:GpBjXyhn.net]
>>292
thx
なるほど、コンパイル途中でエラーすると一部の推論に失敗してしまうのか

323 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 14:42:06.12 ID:LCKhcLzq.net]
const に異常にこだわるくせに異常に長い関数書く馬鹿は見たことあるな。
その前に関数切り出せと。
たぶん Rust が一般に広まるとボローイングルールをまともに理解できなくて
コンパイルできないから関数に切り出さないバカが増えると思われる。

324 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 15:17:40.57 .net]
イミュータブルにすることでコンパイラによる最適化の余地が増えるんでないの?

ミュータブル派とイミュータブル派の宗教戦争勃発なの?

325 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 15:25:32.16 ID:Q+QzpY2X.net]
コンパイラが善きに計らうって、
つまりconstついてた(mut非指定の)変数がレジスタ割り当ての結果変更され得る最適化が起こるってことか?
さすかにそんな最適化は聞いたこと無いがソースあるのか?
即値展開ならわからんでもないが、それと並列は関係ないし

326 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 16:00:32.21 ID:lii/QdBe.net]
アマゾンでオライ

327 名前:梶[のProgramming Rust出てるのな
アーリー版じゃ無い完全版かな?

どうでも良いけど蟹座の俺が心惹かれる表紙
[]
[ここ壊れてます]

328 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 16:21:14.75 ID:318e3gj2.net]
>>308
「使ったことない」って人を判断したがるのは使ったことを自慢したいから?
ある数学上の問題を高速に解くために 2000年ぐらいにMPI を数ヶ月触ったことある程度で
以降は関わってないけど、それはなんか関係あるのか?

設計が破綻しているかどうかは問題によるだろ
どんなに考えても共有リソースにアクセスしなきゃいけない並列プログラムなんて山ほどある

共有リソースへのアクセス削減なんてみんな取り組んでる
そのための一ツールとしてイミュータビリティは重要な概念だろJK

> 並列計算で必要なのはイミュータビリティじゃなくて、変数スコープ分離と外部依存性の無いアルゴリズムだ
「重要視」と言ってるのに「必要」と解釈するのか……
変数スコープ分離という用語は知らん

329 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 18:02:39.24 ID:wSmX/jVF.net]
>>318
kindle版の話か

紙版を注文しちゃってるんだが



330 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 18:17:27.07 ID:oL6iYiK7.net]
ガーガー言うほど文句が出るもんでも、全力擁護すべきもんでもないと思うがね>デフォルトでimmutable
Haskellほどやり方が変わるわけでもない、C/C++のconstより明快、letとvarで分けるほど使い心地が違うものにはならない、
https://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/box-syntax-and-patterns.html
↑にあるようなBoxを使って大きい構造体を関数に渡すのはRustじゃ悪手ってとこだけ知ってればいい

331 名前:デフォルトの名無しさん mailto:sage [2017/11/28(火) 18:18:12.38 ID:Q+QzpY2X.net]
>>319
MPIは不変性は並列化に必ずしも必要じゃないって話の例に出しただけだから、
さわった上で不変性が必要って主張するならまあそうなんだろう

データを不変にして触るノードの分だけコピーすりゃそりゃデータ競合は起きないだろうが、
その分ノードへの転送量だってかかるし、メモリも食う
だから富豪的で、額面上の並列度は上がっても性能には寄与しないと言ってる

俺が知らないだけでもっと良い最適化が不変変数にかかるなら完全に俺が無知晒したでめでたしなんだが






[ 続きを読む ] / [ 携帯版 ]

前100 次100 最新50 [ このスレをブックマーク! 携帯に送る ] 2chのread.cgiへ
[+板 最近立ったスレ&熱いスレ一覧 : +板 最近立ったスレ/記者別一覧]( ´∀`)<249KB

read.cgi ver5.27 [feat.BBS2 +1.6] / e.0.2 (02/09/03) / eucaly.net products.
担当:undef