1 名前:デフォルトの名無しさん mailto:sageteoff [2016/11/02(水) 03:12:40.30 ID:MYQ7Ohex.net] Mozillaがリリースした、プログラミング言語「Rust」について語るスレです。 www.rust-lang.org/ https://github.com/rust-lang/rust Servo https://servo.org/ https://github.com/servo/servo ◆前スレ プログラミング言語 Rust echo.2ch.net/test/read.cgi/tech/1327489549/
331 名前:デフォルトの名無しさん [2017/01/25(水) 00:43:42.66 ID:uVLYflKb.net] rustとc++14ならどっちが学習コスト高いかな?
332 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 01:06:25.08 ID:icd2X49v.net] >>324 (高コスト)C++闇の軍団>proc macroを書くRust>テンプレートを書くC++≧ビルドプラグインを書くRust>Rustさわり>C++さわり(低コスト) 現状こんなもん?
333 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 08:00:44.75 ID:wJvgwWCY.net] 国際規格みたいなのができるとしても複数の実装の事を考えると プラグインは仕様からは外れるかなーとは思う
334 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 09:57:43.37 ID:+ZiK5CtY.net] >>321 zero costで性能良いって売りが事実になれば... 上で上がってたウェブサービスのベンチマークが意外とガッカリ性能だったのが萎える
335 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 11:09:39.71 ID:wJvgwWCY.net] ウェブサービスのベンチマークなんてコンパイラ云々よりも構成のほうが影響強いって上でも言われてるじゃん とはいえアセンブリレベルでは機能制限されたC++でしかないからrustで速くできるならC++だともっと速くできるわけで 労力もC++のほうがかかるだろうけど
336 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 16:34:12.89 ID:82yMOZoe.net] 言語仕様なんだからプラグインが外れるのはむしろ当たり前かと
337 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 16:42:20.24 ID:vaJn6hA3.net] >>322 ん、今さりげなくHaskell馬鹿にした?
338 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 17:46:06.98 ID:G/yiP9yt.net] C++だと安全にするためにコピーしてた箇所をrustだとガンガンmoveにできるとかで、 普通に書いたらC++より早いとかあってもおかしくないとは思う
339 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 17:55:56.70 ID:GF1+cyEf.net] C/C++は危険でも関係なくガンガンコピーするから速い 開発者が明示的にコードで安全にするか 言語が暗黙的に安全にするかの違いがあるだけで 安全なコードが吐かれてたらその分は遅くなるよ
340 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 19:05:12.07 ID:+ZiK5CtY.net] 偉い人説得のために言語仕様だけ推すわけでもなく rustupのビルドツールセットの管理性や、cargoのビルド環境の利便性や、3rd party crateの性能なんかをまとめて だからrustは良いんですよってプレゼンするんだよぉ んで、公式に唱ってるわりに足引っ張ってる3rd party crateの性能が気になる 言語仕様は安全なマルチスレッドを言語文法でもうちょっと便利にして欲しいけど、グリーンスレッドに先祖帰りされても困るしのう
341 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 20:46:32.79 ID:o52BqWk7.net] >>332 そうなんだあ Rustって遅いんですね
342 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 21:10:53.58 ID:G3Sy5RF2.net] コピーするから速い……?
343 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 22:08:50.44 ID:9B/zRGmW.net] 週刊誌並の偏った切り取り方
344 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 22:16:22.79 ID:vvheTSCl.net] せやで dereferenceは高コストな操作だからstructだろうが何だろうが参照渡しより値渡しの方が高速なんやで
345 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 22:31:03.09 ID:rhF3V2Xc.net] めっちゃデカイ構造体コピーしたろ!
346 名前:デフォルトの名無しさん mailto:sage [2017/01/25(水) 22:51:07.48 ID:icd2X49v.net] そもそもRustで「めっちゃでかい構造体」を作るのって、どっかで設計間違ってる気がしなくもない。
347 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 01:26:45.59 ID:QpF8cABc.net] それは作るプログラムの性質であってRust関係ないしお前が設計の良し悪しを決めるものではない
348 名前:デフォルトの名無しさん [2017/01/26(木) 01:43:10.61 ID:2yUJ7U50.net] Rustと言う名前のゲームがあるそうですが それはプログラミング言語のRustで作られているのですか?
349 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 07:47:28.82 ID:2BnY2tIN.net] >>341 その同名のゲームとは関係ない
350 名前:デフォルトの名無しさん mailto:sage [2017/01/26(木) 22:36:48.11 ID:CV+F+02K.net] コピーのコストは構造体のサイズもあるがヒープ使ってるか否かも関係するのでは
351 名前:デフォルトの名無しさん mailto:sage [2017/01/27(金) 05:06:53.57 ID:ZptWLHtZ.net] 32bit時代のC#のドキュメントには、16バイトまでなら参照よりコピーした方がいい って目安が書いてあったけど、今どきはどんなもんだろ。
352 名前:デフォルトの名無しさん [2017/01/29(日) 05:44:52.43 ID:OhLobWwB.net] Rustは何が新しいのか(基本的な言語機能の紹介) - いもす研 (imos laboratory) imoz.jp/note/rust-functions.html こんな記事見つけた
353 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 06:53:26.90 ID:96Ypx+6J.net] Rustは何が新しくないのか、とセットで lyrical-logical.hatenablog.com/entry/2017/01/28/213539
354 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 08:24:52.66 ID:95TVWg7i.net] つまりRustで出来てC++で出来ないことはないけど、C++で出来てRustで(コンパイラが通してくれないせいで)出来ないことはある、と。 C++でいいじゃん。Rustいらないね。
355 名前:デフォルトの名無しさん [2017/01/29(日) 08:34:25.98 ID:uQxwW8BY.net] 何でも出来た方がいいのはチーム全員が信頼出来る場合だけだな
356 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 09:19:49.49 ID:MpcYD/ky.net] 自分自信すら信用できず、実際自業自得でバグを産むから、他人の信用なんか真っ平ごめんだ
357 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 11:26:25.73 ID:qAZTn4yt.net] Mozilla(というかブラウザ)のメモリ関連のミスは影響がヤバいからわざわざRustまで作ってるだけで メモリ関連ミスってもどうということはない程度のプログラムならC++でもいいんじゃない
358 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 11:29:34.14 ID:HeP1z5CV.net] メモリ関連というよりはもっと一般的なuse-after-freeの対策も含んでると思うけどな 最近のSerde 0.9のリリースなんかはまさにそれだし
359 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 15:04:54.98 ID:3OY0Puum.net] C++書けない無能のための言語なのに、学習曲線が断崖絶壁の無能に使えない言語に落ち着くRust。
360 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 15:12:56.27 ID:MpcYD/ky.net] swiftスレで相手してくれる人がいなくなったからrustスレに遊びに来たのな あっちで遊んでやんよ、お前も使ったことないrustよりまだ使えるswiftのがいいだろ?
361 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 16:05:51.17 ID:LzV9/FyF.net] 大規模なC++プログラムメンテナンスするコストに比べればrustの学習曲線なんて平原みたいなものでは
362 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 16:06:01.65 ID:SmTDa/S0.net] 自分の脳みそを完全に信用できるならな
363 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 18:28:56.50 ID:MpcYD/ky.net] いや信用できないからrustが良いのだ rustはエコシステムが他言語に比べてめっちゃスマートだよな goもまぁ悪くはないけどソースファイルの置き場とか依存ライブラリの管理とかイマイチ C/C++やSwiftはそれぞれ別の理由で論外だし
364 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 22:47:53.84 ID:Ocx7v7z5.net] 書くための敷居が低いけど、書く能力がモロにメンテナンスコストに反映されるC++と 書くための敷居が多少高いけど、だいたいはコンパイラが面倒見てくれるRust C++で血ヘド吐いた人ほど後の方を重視して、メンテコストを軽く見る人ほど前の方を見てRust叩く印象。
365 名前:デフォルトの名無しさん mailto:sage [2017/01/29(日) 23:15:06.07 ID:NDmTx4oh.net] 書くための敷居というか、入門の敷居では 慣れれば書くことに苦労することはあまりないように感じる
366 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 00:51:03.60 ID:eF+mclkT.net] https://crates.io/ そろそろ Crate は、ジャンルごとに階層化したりタグ付けできたりソートできたりしないと発見率が糞になるかと。
367 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 02:43:56.69 ID:YhRMpmBj.net] 敷居が高いは不義理をしてあわせる顔がない時に使う
368 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 03:24:58.17 ID:OQRcOPPf.net] へえ、ものしりだねー
369 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 07:58:57.30 ID:nWNAE5Le.net] >>359 2000年頃のyahooみたいに? ツリー検索をこの時代に復活させるのはないわー
370 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 19:07:27.99 ID:bQnpSDhS.net] いくら言語を誉めたところで、この言語で書かれたまともなプロダクトも、この言語の本も出てないことが、この言語のダメさを物語っている。
371 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 19:11:49.38 ID:rVcDTRet.net] Facebookがmercurial hgをポーティングしたって話の裏は取れたんだっけ?
372 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 19:36:00.65 ID:nWNAE5Le.net] >>363 つ ripgrep 煽るには知識が足りてない
373 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 19:43:25.52 ID:ako8vkN5.net] ライブラリの話ならともかく、エンドユーザ向けのプロダクトが多くないことと(エンジニアにとっての)言語の良さって関係あるの? 個々人のプロジェクトで役に立ってるのならそれで十分でしょ
374 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 21:56:25.56 ID:7WMFgwOL.net] それ以前に仕様が固まってないじゃん。Rust AppleのSwiftが流行らないのと同じ。 今は実験段階なんだからプロダクト数だけで言語の良し悪しは測れない。
375 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 22:33:48.94 ID:BdTPiSFU.net] >>368 1.14にもなって言語仕様固まってないのも問題のような気がしなくもないが…… Goはまだ(?)1.7だけどももうほぼ言語仕様Fixと言っていいレベルで固まってるし。 プロダクトって面で言ったら上で出てるripgrepもそうだが、 まずFirefoxのコアに使われてる時点で「まともなプロダクトがない」って口が裂けても言えないだろ。
376 名前:デフォルトの名無しさん mailto:sage [2017/01/30(月) 23:13:49.09 ID:qF4ARhTt.net] const_fn、conservative_impl_trait、never_type、associated_consts……この話はやめよう
377 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 00:42:51.03 ID:E22d6Q0u.net] 固まるの意味が分からないがstableな機能ではまだ足りないと言っている?
378 名前:デフォルトの名無しさん [2017/01/31(火) 01:08:37.64 ID:lkTuVnqH.net] 言語仕様に変更があったら後方互換性があってもダメというなら殆どの言語使えないよね。 何ならOKなんだ?というレベル
379 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 01:18:23.09 ID:w/stZREj.net] C++センパイの進化について
380 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 01:57:41.10 ID:TmvDy1Hy.net] C/C++のようにOSでもカーネルでもデバドラでも組み込みでも何にでも使える言語が良い ユーザレイヤでしか触れない言語は価値が低い
381 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 02:04:11.12 ID:EAnQTfF2.net] いったい何を批判しようとしてるんだ?
382 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 04:21:00.72 ID:J6yoEKAE.net] c++でデカイプロジェクトゴリゴリ書いてた人ほどrustいいんだろうな
383 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 05:03:19.87 ID:IQXv4KrI.net] C++はヘッダファイルに分かれてたりするのが嫌い。 Rustもモジュール周りはちょっと嫌い。 modといいつつ、実質includeが基本みたいだけど、なんだか古めかしい。
384 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 05:14:32.48 ID:iAIegLum.net] 可視性と階層構造を持つincludeとかもはやincludeじゃないよそれ
385 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 11:32:06.32 ID:x8DMpHTc.net] >>371 単純に機能が足りてない。 conservative_impl_traitがないとアンボックス化したクロージャ返せないとか。
386 名前:デフォルトの名無しさん [2017/01/31(火) 11:44:51.26 ID:sCWKIGbu.net] 下記のような処理で forの中で繰り返し毎にvecの変更内容を確認したかったのですが、 closureにvがmutable borrowされてるためにエラーになってしまいました。 こういうのは何か回避する方法はあるんでしょうか? fn main() { let mut v = vec![1, 2, 3]; { let mut takes_nums = |x| v[0] += x; for i in 1..3 { takes_nums(i); // println!("{:?}", v[0]); // ここで一時的にvの値を確認したい } } println!("{:?}", v); }
387 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 12:08:39.86 ID:7hNNIgfe.net] モジュールもMLとかと比べてしまうと見劣りはするな 確かにC++よりはマシだけど
388 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 12:33:39.17 ID:yyJuX8zg.net] >>379 takes_numsからきちんと返す とか https://play.rust-lang.org/?gist=12884b1ee4ef3196c70d52f5defacf70
389 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 14:03:31.13 ID:sCWKIGbu.net] >> 381 なるほど。そうすると確かにいけますね。
390 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 15:01:08.68 ID:16SeH9xy.net] >>379 こんなこともできる https://fraserblog.codewise.org/sneaking-a-peek-at-private-data-for-testing-in-rust/
391 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 17:27:00.00 ID:19P3vDy6.net] スライスパターンまだ?
392 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 19:31:33.91 ID:FHFaV7L7.net] intrinsicsって何? 永遠にunstableとか書いてあるんだけど
393 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 19:50:54.86 ID:iAIegLum.net] 普通は直接触らない(libstdのstableなインターフェイスを通して使う)ものだから知らなくて良い どうしても知る必要があるのならまずcompiler intrinsicsでググって一般的なintrinsicsについて調べてからcore::intrinsicsのドキュメントに戻ると良い
394 名前:デフォルトの名無しさん mailto:sage [2017/01/31(火) 22:25:40.67 ID:FHFaV7L7.net] コンパイラ方面の単語なのね thx
395 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 16:47:26.59 ID:t+0AKFTt.net] >>373 javaとかに喧嘩売ると荒れるからやめろや
396 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 18:13:30.15 ID:UXwydrfk.net] 言語に貴賤なし。プログラマに貴賤大有り
397 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 18:18:40.81 ID:A+dqSgkk.net] 無理やり荒れさすなや
398 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 22:27:21.76 ID:swnG7r4K.net] Rcって1つのオブジェクトを色んな所から参照したいけど複数にmoveさせられない って時にRcで包んでcloneして複数に増やして使う 内部ではcloneされてかつ生き残ってる参照の数を保持していて 0になったらリソースを解放 GC云々言われるのは一般的にこのアルゴリズムがGCでも使われているから って認識であってる?
399 名前:デフォルトの名無しさん mailto:sage [2017/02/01(水) 23:10:00.44 ID:vXBX0LGU.net] 大体合ってるよ Weakポインターは解放の判断時にカウントされないこともお忘れなく
400 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 03:50:46.78 ID:o3QjYKDf.net] Announcing Rust 1.15 - The Rust Programming Language Blog https://blog.rust-lang.org/2017/02/02/Rust-1.15.html ご存知の通りcustom deriveがstableに それと、rustc自体のビルドシステムがRustで書き直されたとのこと 1.17からはMakefileを完全に廃止する予定で、それによってrustcを書くのにcrate.ioのパッケージを直接使えるようするための道筋か整うんだと
401 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 03:52:31.61 ID:o3QjYKDf.net] crate .ioじゃなくてcrates.ioだわ
402 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 22:09:00.34 ID:TA0AL/qz.net] お前らこんなめでたい日だってのに静かだな 豆でも撒いてんのか?
403 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 22:45:31.22 ID:o3QjYKDf.net] #[derive(Throwable)] struct Soybean;
404 名前:デフォルトの名無しさん mailto:sage [2017/02/03(金) 23:15:20.66 ID:MzXAEQdU.net] カスタムderiveは良いよね、夢広がりんぐ。 所で Rust 2.0 へのロードマップとか無いのか? 何に至れば 2.0 になるんだ?
405 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 03:35:44.48 ID:Lsw0X+V5.net] 破壊的変更をするのが2.0だけど、今のところ破壊的変更をしてまで入れたいものはあまりなさそう
406 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 04:51:36.32 ID:KgCacN16.net] Incremental Compilation Beta - compiler - Rust Internals https://internals.rust-lang.org/t/incremental-compilation-beta/4721 Incremental compilationがbeta段階に達したらしい Nightlyユーザはcargoの実行時に以下のようにしてオプトインできる: $ CARGO_INCREMENTAL=1 cargo <command> またはrustcを直接呼ぶ場合: $ rustc -Zincremental=<path> <other arguments>
407 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 14:50:05.31 ID:HGLYAiwq.net] 知り合いがRust使ってサーバー書いてたんだけど、グレースフルシャットダウン?すらできないからクソだって言ってたな。 そこんところどうなってるんだろう。この言語そもそもサーバー書く言語じゃなかったりする?
408 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 18:13:59.54 ID:bWVhQOn0.net] 言語じゃなくライブラリの問題で適当なライブラリがないなら自分で書くものだ それを自分で書けないのは自分がクソと言ってるも同義だと思うけど そんな難しいロジックが必要でもなかろうよ > graceful shutdown
409 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 18:37:54.59 ID:KgCacN16.net] ドキュメントを読むと、Hyper v0.11(未リリース)からgraceful shutdownに対応してる風の記述が見られる 詳細は知らん
410 名前:デフォルトの名無しさん mailto:sage [2017/02/04(土) 22:15:04.50 ID:maiRrllE.net] >>401 やっぱり言語の問題じゃないよな。 これで心置きなく発言者に甘えんなアホって言えるわサンクス。
411 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 12:21:31.45 ID:39kPthL5.net] ところでこのRustとかいう言語、いつになったら全部のシンタックスがStableになるんだい? それまではC++使ってるからその時になったら起こしてくれ
412 名前:。 [] [ここ壊れてます]
413 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 13:47:47.29 ID:yZbwod3C.net] おうC++17の策定あくしろよ
414 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 13:52:10.30 ID:1zIopPJZ.net] P0292R2のstabilizeマダー
415 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 13:57:36.06 ID:u0uQCFq0.net] >>404 が永眠してしまった、天国に行けるといいね
416 名前:デフォルトの名無しさん mailto:sage [2017/02/05(日) 19:55:33.99 ID:5xwhf5r6.net] C++0x → C++11 C++1x → C++14 C++1y → C++17 だと思ってたら違った。1xは欠番か
417 名前:デフォルトの名無しさん mailto:sage [2017/02/08(水) 18:40:35.01 ID:lAOVscE3.net] いまだにHashMapを扱う度にborrow checkerと格闘してcloneや一時変数、unwrapだらけになって辛い 自分の技術不足が恨めしい
418 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 10:17:09.71 ID:X3gAJ9Ta.net] それはお前の技術不足じゃなくて言語の欠陥だろ。気にすんな。
419 名前:デフォルトの名無しさん mailto:sage [2017/02/09(木) 11:56:02.46 ID:LJBL065x.net] 荒し乙
420 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 05:58:09.39 ID:jFfrPWyu.net] まあマップ関連はretainの実装も放置されてる状況だしねえ(issue #1338) ところでstableのマイナーアップデートが来てる Announcing Rust 1.15.1 - The Rust Programming Language Blog https://blog.rust-lang.org/2017/02/09/Rust-1.15.1.html
421 名前:デフォルトの名無しさん [2017/02/10(金) 17:59:28.97 ID:XNSQcvUK.net] RustでJVMやFlashPlayer作り直せばJavaAppletやFlashが復活するー?
422 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:00:49.21 ID:hHNUUpqe.net] しなくていい
423 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:19:20.79 ID:3fWDw1w5.net] 現状のHashMapを普通に使って、他の言語よりmemcpyの量増える?
424 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 18:19:25.15 ID:rXluJnty.net] しない。 それらは言語の問題ではなく、政治的な理由で消えたから。 (犯人はMSとApple)
425 名前:デフォルトの名無しさん mailto:sage [2017/02/10(金) 19:00:45.32 ID:Q2EFSTbD.net] 普通に使うの定義がさっぱり分からんけど 要素操作のために、必要以上にcloneしないといけない設計/実装してるなら増えるんじゃね cloneしなくて済むスマートな実装手法を自然に書けるようになりたい (書けないからいつも推敲してる)
426 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 10:28:11.76 ID:zwnL86Oa.net] とうとう火狐がRustなしではビルドできなくなるカウントダウン始まったな。 で、結局Rustはモジカスのオナニー以上でも以下でもなかった件について
427 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 10:41:16.81 ID:wHhLxWjt.net] 狂気丸出しのレスだな。
428 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 11:06:35.68 ID:7X0vvEjV.net] オナニーレスに触るなよ悦んじゃうだろ
429 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 11:14:21.57 ID:l/JrB4B7.net] assert!(!(Rust >= モジカスのオナニー)); assert!(!(Rust <= モジカスのオナニー)); assert!(Rust.is_nan() || モジカスのオナニー.is_nan());
430 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 11:31:22.65 ID:7X0vvEjV.net] let cum_amt = mozilla.masturbate() .to(Some(rust)) .duration(Duration::from_secs(30)) .finish();
431 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 11:49:18.40 ID:zwnL86Oa.net] 実際モジカスのオナニーを超える範囲で使われてるならその事例教えてくれよ。 火狐みたいなオナニーブラウザの自作自演以外でよ。
432 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 11:49:18.81 ID:zwnL86Oa.net] 実際モジカスのオナニーを超える範囲で使われてるならその事例教えてくれよ。 火狐みたいなオナニーブラウザの自作自演以外でよ。
433 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 11:56:22.97 ID:VFoQx1wb.net] キチガイはすぐファビョって連投を始める
434 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 13:51:05.15 ID:THrV6nDM.net] ドユコト? やっぱりD言語の方がいいってこと?
435 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 14:39:04.19 ID:zwnL86Oa.net] 他が良いとかじゃなくてこの言語の実用性がないっていう単純な話なんだが。 これ使うくらいならC++の方が(Rustの謳い文句に反して)はるかに使いやすいしちゃんとものができる。 だからモジカスのオナニーでしかないって話。
436 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 18:36:27.18 ID:3XLU4PQN.net] あなたに何の魅力も無いのに、あなたの主観的な評価に意味を見出だせない 実際に触ったことがある
437 名前:ネら「Mozillaが開発している&関係が深い」ことを評価の基、あるいはレッテル貼りに使うなんて的外れなことはしない もっとまともな批判なら相手する人もいるだろうよ [] [ここ壊れてます]
438 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 21:28:32.27 ID:7X0vvEjV.net] ID:zwnL86OaがいくらRustを嫌おうがお前にとってのRustの有用性が変わるわけでもないんだからほっとけよ
439 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 22:11:11.49 ID:2CyLjYwO.net] C++はツギハギだらけでダメだろ
440 名前:デフォルトの名無しさん [2017/02/13(月) 23:19:53.96 ID:8+uLQ/Rs.net] ひとまずRustで安全なJavaVMを作って><
441 名前:デフォルトの名無しさん mailto:sage [2017/02/13(月) 23:51:37.77 ID:g/I/A31s.net] 実際Rustに不満がないわけではないが、せめてどこを改善すべきかくらい言えんのか…… 個人的にはライブラリ周りがコミュニティ頼り過ぎるのもうちょい公式主導で整備できんもんかねと思う。
442 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 00:44:04.76 ID:qahXd/u8.net] chronoの作者とかもついに音を上げちゃったしなあ ああいうのも本来は公式が主導してしかるべきものだわな(rust-lang-deprecated/timeの代わりとして)
443 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 07:37:19.09 ID:W2b/azRY.net] 主要なものすら外部にブン投げるスタイル、面白くて好き chronoがダメなら次が出るだろうよ
444 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:11:42.74 ID:JAgDzlFN.net] 音を上げたっていうののソースは? https://users.rust-lang.org/t/chrono-0-3-released-and-the-future/9340/7 ここ見るとまだまだやる気に見えるが。 一人でやるの限界だからコミュニティ化したいとは書いてあるけど。
445 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:21:59.52 ID:s4KAVx3x.net] 世間ではそれだけで音を上げたという。 ちょっとヘルプ求めただけでも。
446 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:24:38.08 ID:w7iikRzO.net] I had significant energy depletion that has prevented me to do *anything* that is not a daily jobって相当やで 実際しばらくはmerge commitばかりやってたわけだし
447 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:38:47.54 ID:JAgDzlFN.net] 音を上げたっていうからてっきりunmaintainedになったもんだと。 というか時刻系ライブラリまで外注とかRust流行らせる気あんのか?
448 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 08:41:04.32 ID:JAgDzlFN.net] いや、言語のコンセプト考えるとそこはlibc叩いてなんとかせいって感じか。
449 名前:デフォルトの名無しさん [2017/02/14(火) 09:01:28.39 ID:MfKEp5BT.net] libcの時間系の関数ってシステム時刻の変更が影響あるものしかなくて足りなく無い? 結局clock_getimeとか環境依存のが必要になる感じ
450 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 09:29:23.11 ID:he6YB8dM.net] きっとうるう秒が悪い
451 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 10:17:09.44 ID:gRGlEM3t.net] Goがなんだかんだ受け入れられたのってこの手のライブラリをほとんど公式で提供してるのもでかい気がした。
452 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 10:29:11.59 ID:DOzUz97u.net] Rust's 2017 roadmap https://blog.rust-lang.org/2017/02/06/roadmap.html > Rust should have 1.0-level crates for essential tasks 公式もやる気を見せてるしがんばってほしいね
453 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 13:02:14.37 ID:yamMgOVS.net] D言語ももう少し根性見せろや
454 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 13:37:21.21 ID:EX/xGDf7.net] 純粋な疑問なんだが今のRustがDに勝ててる点ってケツモチ企業がいること以外になんかあったっけ。 コミュニティ規模的にはそこまで差はないよね?
455 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 13:46:33.71 ID:W2b/azRY.net] いつもの謎のD言語推し 何がお前をそうさせるのか
456 名前:デフォルトの名無しさん [2017/02/14(火) 15:50:24.26 ID:ze+N1Rxh.net] githubでfork数10倍差があるんだけどコミュニティ規模に差がないって何基準?
457 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 17:25:27.66 ID:EX/xGDf7.net] Stackoverflowの質問数から、Rustの言語自体の難解性差っぴいてだいたい同じくらい
458 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 17:37:38.79 ID:qahXd/u8.net] https://github.com/search?q=language%3ARust >Repositories 6,413 https://github.com/search?q=language%3AD >Repositories 5,754 先発の言語でこれな時点でねえ
459 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 18:24:47.18 ID:tJceDBsJ.net] 新しい言語ほど、時刻とか日付とかは鬼門だよ ナノ秒まで扱わせろとか元号に変換させろとかうるさい注文が来るんだから
460 名前:デフォルトの名無しさん [2017/02/14(火) 18:26:17.87 ID:uwayiWk9.net] Dのtimeは混乱してるようにみえる
461 名前:デフォルトの名無しさん mailto:sage [2017/02/14(火) 18:56:33.55 ID:qahXd/u8.net] let ymd = (date.year(), date.month(), date.day()); let era = if ymd >= (1989, 1, 8) { 'H' } else if ymd >= (1926, 12, 25) { 'S' } else if ymd >= (1912, 7, 30) { 'T' } else if ymd >= (1868, 1, 25) { 'M' } else { '?' };
462 名前:デフォルトの名無しさん [2017/02/15(水) 08:45:00.92 ID:nJh54DV/.net] 日本の元号を標準ライブラリに入れろなんてバカ存在するの?
463 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 10:42:25.80 ID:9ZjtEPYx.net] 日本のIT人材水準のゴミクズ加減からするとあり得んとも言い切れんのだよな。
464 名前:デフォルトの名無しさん [2017/02/15(水) 11:05:55.95 ID:N3aAX75A.net] >>453 TimeZoneサポートしてる言語で元号入ってるのあったんじゃね
465 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 11:40:15.46 ID:Eq8lnkGd.net] >error[E0008]: cannot bind by-move into a pattern guard あああああ! guard内ではborrowしかしてねえだろ殺すぞ!
466 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 12:24:37.27 ID:er7cKMeE.net] ちょっとワロタ、コード切り出して張り付けてみ? 考えてやんよ
467 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 12:58:26.10 ID:Eq8lnkGd.net] 当初書きたかった奴がこんな流れ guard内ではCopyをimplしているs.xしか使用していないから本来moveの必要はないはず https://play.rust-lang.org/?gist=c2c1e71a7579c10edfe2e9ceea98f9fc こうしたらコンパイルが通ったけど、elseあたりがとてもキモい https://play.rust-lang.org/?gist=12985ffd8cef76c41dd6f3790afa0b42 まあ既にコンパイルは通ってるから直せなくても別に困らないんだけど、なんかキモい
468 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 13:39:24.49 ID:JsTxjjGi.net] あんま笑い事じゃないな…自分の手には余るわ。
469 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 14:48:20.04 ID:kyvGdeQY.net] Rustが実用に耐えない欠陥言語であることがまた一つ示された
470 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 15:04:13.32 ID:er7cKMeE.net] こんなんでどうだろう ttps://play.rust-lang.org/?gist=22ace15b6d140db6d0c3b007ea155e8b&version=stable&backtrace=0 無用にCopy/Cloneしてんじゃねーよとは思わなくはないけど、多分COWで最適化されて実際はその動きをしない...と思いたい if elseの気持ち悪さはなくなるから、derive宣言が許されるならこれで回避したい所存
471 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 15:11:30.78 ID:er7cKMeE.net] あ、Enum::Vがテスト用に書き換えたままだ そこは無視してくれい
472 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 15:56:56.27 ID:JsTxjjGi.net] 一応、RFCにも入ってて実装待ちになってはいるんだな https://github.com/bluss/rfcs/blob/master/text/0107-pattern-guards-with-bind-by-move.md 馬鹿なことをしない限りは問題無さそうなんだけど、Cell::setとか使われると厄介かも
473 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 16:16:51.99 ID:8li9lRMw.net] noneのelseは確かに消したい衝動に駆られざるをえない
474 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 16:24:22.19 ID:kyvGdeQY.net] キモい書き方でしか書けない言語って実用性もお察し。
475 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 16:31:16.56 ID:Eq8lnkGd.net] 実装待ちか……本当に実装待ちの機能多いよね。改善の予定すらないよりはよほどマシだけど >>461 実際のコードではSに相当するstructがsize_ofで50バイト以上あるようなものだから最適化に賭けてcloneしまくるのも怖いんだよなあ ただ、将来的に>>463 が実装される予定なら一時的なworkaroundとしてそうするのもありかな…… みんな助言サンクスです
476 名前:デフォルトの名無しさん mailto:sage [2017/02/15(水) 17:13:01.01 ID:k6zWy9I5.net] あれれーおかしいぞー、RFC通ったのが一年以上前に見えるんだが……
477 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 10:31:03.92 ID:Ql+ZhAJA.net] 機能に欠陥がある言語というのもさることながら、 その欠陥に当てるパッチすら一年以上放置。 本当この言語おわってんな。 Cを置き換えるとか腹が痛くなるわ。
478 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 11:24:08.77 ID:JPLcUbCW.net] なにかしら貢献しようってのはないの?
479 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 12:09:50.46 ID:QxzW1FU8.net] 触んな触んな
480 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 12:10:46.27 ID:AljdSsft.net] 平和なRustスレに粘着アンチが出る程メジャーになったか。
481 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 18:35:45.29 ID:jxTm1qP3.net] この言語じゃなくても、そろそろ流石にC/C++の後継言語は出てきて欲しいぞな
482 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 18:40:43.39 ID:RfRD56xR.net] サーバサイドにはgoが、iOS/macOSにはswiftがいるじゃん マルチOSのコアライブラリという残りのパイでrustは芽を出すといいなぁ nimよりはマシではないかと思っている
483 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 20:59:32.12 ID:VUboIYs6.net] C/C++の後継を考えると変数宣言はType val形式じゃないと受け入れられないでしょ。 Rustはvar val:Type形式だし
484 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 21:05:18.40 ID:dGmRkXVH.net] そんな些細なことに拘る奴おらんで。
485 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 21:18:32.52 ID:RfRD56xR.net] >>474 ワロタ、生ポインタがーならまだしもそんな所を突っ込むかw
486 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 21:30:01.61 ID:WlZ7N49H.net] システムプログラミングってもなあ その下のハードウェアAPIがまずC/C++だしunsafeまみれになるくらいならC++で別に... となりがちな予感
487 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 21:48:54.09 ID:kTImIXI/.net] お前、rustでシステムプログラミングしたことないだろ 下層レイヤーをunsafeでラップして中層以上はrustだけで書くからunsafeだらけにはならないよ unsafeだらけになるような書き方する奴がC/C++で書いたら生ポインタ弄り回したり、独自macroで汚したりする予感
488 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 21:50:51.71 ID:QxzW1FU8.net] -sys crateは良い文化
489 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 22:52:06.05 ID:kEY1d4Ow.net] c++ の後継は c++ 自身だろ。 おれはもう別言語にしろと言いたいけど。
490 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 23:16:50.76 ID:Ctthh1M5.net] rustcにCやC++が残ってる限りrustがC/C++の後継に成りきれない何かがある
491 名前:デフォルトの名無しさん mailto:sage [2017/02/16(木) 23:20:52.50 ID:DGgcs6h7.net] >>474 val: Typeの方が文法的に良いのよ。 Type val単体だとそう弊害は無いんだけど、例えばジェネリクス<>を使うことにするとA<B> x; っていう文が宣言なのか比較演算してるのかパーサが分かりにくいとか、 キャストを(Type)xっていう文法にしたら x + (A) (y)っていう式はyをAにキャストしてるのかA(y)という関数なのかが分からないとか、 パーサに型やらシンボルの種類とかいう文脈を保持させる必要が出てくる。 おかげでCもC++もJavaもまともにパースしようとすると手で書いた方が良いってくらい面倒になってる。
492 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 00:33:46.93 ID:yhaDaC8E.net] llvmをrustで書き直そう
493 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 00:53:54.84 ID:sPCLdDuU.net] そもそも変数の宣言を型名で表す文法と型推論の相性が悪すぎるでしょ
494 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 01:13:10.67 ID:9N3wqPif.net] とりあえず2017年のロードマップ完遂したらC++の後継候補くらいには正式になれそうな感じがする。
495 名前:デフォルトの名無しさん [2017/02/17(金) 05:44:50.97 ID:ICuCz4ej.net] ゲームエンジンをパフォーマンスそのままでRustで書き直せたら後継といっていいんじゃなかろうか
496 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 08:06:47.24 ID:nCBINic8.net] >>483 SQLiteをRustで書き直そう
497 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 10:52:00.95 ID:jHhPXKUT.net] linuxをRusuxにすればcの後継
498 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 11:12:03.68 ID:3FtIr36J.net] >>488 >>9
499 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 14:07:26.39 ID:eFr6pWHl.net] >>15
500 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 18:21:18.09 ID:5sY5yHIi.net] FireFoxをRustで書き直そう
501 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 18:59:34.73 ID:ZDBavghI.net] Servo
502 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 19:18:49.28 ID:sPCLdDuU.net] ServoをRustで書き直そう
503 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 20:52:51.39 ID:jHhPXKUT.net] アセンブリ部分が残ってもんなもんどーでもいいんだよ Cで書いてる部分をrustに置き換えたら十分って話 アセンブリ言語部分を置き換えたいなんて一言も言ってない
504 名前:デフォルトの名無しさん mailto:sage [2017/02/17(金) 21:22:35.36 ID:krcZKPEA.net] 先ずはlibcompiler-rtから
505 名前:デフォルトの名無しさん [2017/02/17(金) 22:06:03.85 ID:y4+T5net.net] >>442 だな
506 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 09:19:54.20 ID:PNO7DmhT.net] >>494 >>15 同じ話を何度されてもなw LinuxをRustで書き換えればーの話はよほど変な角度から攻めないと無理
507 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 10:17:07.05 ID:bUHmqYrs.net] >>491 それは既に部分的にやってるんだっけ >>497 ?
508 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 12:01:36.21 ID:xPVYVI1A.net] Cow使うとライフタイムパラメータがstructの最上位まで伝搬してしまうのですが これはそういうものとして受け入れるしかないですか?
509 名前:デフォルトの名無しさん mailto:sage [2017/02/18(土) 20:39:36.76 ID:Ul87se3O.net] Cow<'static, T>なら伝播しないけど、'staticを必須にしたい場面は少ないよねえ……
510 名前:デフォルトの名無しさん mailto:sage [2017/02/19(日) 01:05:13.21 ID:s3EB+fhT.net] 後継言語は名前からしてD言語じゃないと
511 名前:デフォルトの名無しさん mailto:sage [2017/02/19(日) 06:50:46.22 ID:v/sHJsoq.net] 名前だけは後継
512 名前:デフォルトの名無しさん mailto:sage [2017/02/19(日) 08:30:58.18 ID:2oS2o7no.net] ライフタイムは上に伝搬しないとコンパイラ的にもプログラマ的にも困ると思うの
513 名前:デフォルトの名無しさん mailto:sage [2017/02/19(日) 08:34:53.71 ID:v/sHJsoq.net] 実際にはelisionでCow<T>と書けることも多いしな
514 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 18:49:57.67 ID:ehHRa0XE.net] こんな書き方できたのか!!! fn x((a, b): (u32, u32)) {}
515 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 22:04:29.62 ID:97wV3Rfs.net] 別にそんな書き方出来なくてもいいよ
516 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 23:14:15.09 ID:mI2RJMjC.net] 単なるタプルを引数にした関数で、呼び出しもタプルだよなぁ・・・ と思って試したら、やっぱり呼び出しも x((1, 1)); で書く必要があった!!! どういうケースで使うんだよ、このタプル引数の関数
517 名前:デフォルトの名無しさん mailto:sage [2017/02/20(月) 23:38:34.63 ID:ehHRa0XE.net] fn foo(Foo(a, b): Foo) {}
518 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 08:08:29.59 ID:KVrlVIJb.net] 落ち着けただの構造化束縛だ。 ttps://play.rust-lang.org/?gist=c66f3f420befbdc37090ec793ebb9735&version=nightly&backtrace=0
519 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 08:12:10.81 ID:KVrlVIJb.net] structural matchするの忘れたけどパターンマッチも構造化束縛も両方パターンだよ。
520 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 08:20:55.82 ID:eTJT09tJ.net]
521 名前:ああ、そういうことか >>508 の言いたい事を理解しようと首を傾げてたけどfn fのtypoなんだろうな それとタプル引数関数の関係性は分からんけど、それはもう考えまい [] [ここ壊れてます]
522 名前:デフォルトの名無しさん mailto:sage [2017/02/21(火) 08:24:42.94 ID:9Kn0UuQq.net] >>505 の時点で「関数引数でパターンマッチ出来たのか」ということを言っていたんじゃない?
523 名前:デフォルトの名無しさん mailto:sage [2017/02/22(水) 01:07:33.12 ID:s4CGuq4I.net] >>511 >>508 のfooは関数名でFoo(a, b)はtuple structに対する構造化束縛で 右辺のFooは引数リストの1つめの仮引数への型注釈だよ。 静的言語だからパターンが現れるとたまたまLHSと型注釈の両方に型名が出てくるの。 これがもし動的言語ならLHSに型名はでてこない。 // js function foo([a,b]){} ちなみにa,bは分解された束縛。
524 名前:デフォルトの名無しさん mailto:sage [2017/02/22(水) 11:24:58.93 ID:IzdwqWc0.net] https://www.reddit.com/r/rust/comments/5vbr31/nonlexical_lifetimes_using_liveness_and_location/ もっとborrow checkerが賢くなってくれたら嬉しい。個人的にはimpl Traitよりもありがたい
525 名前:デフォルトの名無しさん mailto:sage [2017/02/22(水) 11:25:33.44 ID:dczNCglp.net] crates.ioのダウンロード数のグラフがすっげえ見づらくなってる
526 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 09:04:21.53 ID:zngwxGAX.net] Rust Project Developersが直々に乗り込んでコード書いて、Rustが一番早いぜとか言い出す姿勢ほんとすこ benchmarksgame.alioth.debian.org/u64q/performance.php?test=knucleotide
527 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 09:41:00.54 ID:dRZrz+vD.net] ワロタwww しかし、流石にC言語勢がプライドかけて1位奪取に走ると思う
528 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 10:36:58.61 ID:IXi6HShy.net] コストかけるとこほんとそこじゃねえんだよ。 こりゃ某S系質問サイトで人気トップなのもステマだろうな ステマで人気を膨らましてその実実用にもならないクソ言語 クソモジラがケツモチしてるんだからステマで人気水増ししてるのも当然の帰結と言えるか
529 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 13:08:05.53 ID:H4R0mXRf.net] 人気水増ししたら何かいいことあるの? ステマするほどの価値があるようにも思えないが。
530 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 13:16:02.83 ID:LSEhsWdS.net] >>519 自分もこんなゴミステマしても虚しいだけだと思うんだが、 どうやらモジラにとってはこの言語が流行ってくれないと困るらしい だから「これからはRustの時代!」みたいな工作をStack某とか上のベンチマークとかでやってんだろう。 最近ロゴ変えたことといい、どうもクソモジラはOSS界の電通目指してるくさいな。
531 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 13:25:43.94 ID:U3ebhjnw.net] Rustが流行る => Rustで実装されたServoの完成度が上がり流行る => ServoがWebkitの代わりに使われる => Servo組み込みサポート費用がMozillaに払われる 随分と迂遠なMozillaの経営改善計画だったんだよ!と頑張ってみる ステマされて困る人はパイを奪われるWebkit関係者かな?
532 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 13:30:47.35 ID:zngwxGAX.net] 競争相手はWebKitでもEdgeHTMLでもなくBlinkやろとマジレス
533 名前:デフォルトの名無しさん [2017/02/23(木) 13:44:41.82 ID:LSEhsWdS.net] >>521 それ本気で言ってるとしたら中の人乙としか言いようがないな。
534 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 14:32:01.45 ID:eozO90Y3.net] クソ連呼厨ってID変えられるのかよ
535 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 14:51:38.09 ID:zngwxGAX.net] nixを始めとする一部のRust関係プロジェクトのプルリクエストを管理している@Homuとかいうbot、あれって誰の趣味であんな風になったんだ……?
536 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 14:51:48.47 ID:LSEhsWdS.net] >>524 別に理由もなくクソ連呼してるわけでもないんだがな。 CやC++で簡単に書けることもコンパイラに弾かれて書けないわ そもそもシンタックスが未完成だわ ライブラリも貧弱で、かつCライブラリ使うためのラッパも unsafe層とRust層の二層無駄に必要だわ これを実用言語としてごり押しするクソモジラの良識のなさが一周回って笑える もともとモジラに良識なんてないけどさ。
537 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 14:56:46.73 ID:yq/Deji1.net] 危険な操作をコンパイル時点で弾いてくれるのがRustの売りなのにそこで文句を言ってるのは根本的にミスマッチしているとしか
538 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 15:07:19.45 ID:LSEhsWdS.net] >>527 危険な操作とか言い出す判定がクソすぎて明らかに安全なパターンもはじいて来るだろ。 おかげでボイラープレートなコードが増えること増えること。 そこをなんとかごまかすための文法拡張の導入は機能に関係ないとかで後回し ついでに型もうるさい上にドキュメント見ても返り値の型がわからんで型合わせが総当たり 確かに物が何一つ作れないという意味では安全だわな。危険なものも含めて一切できないから。
539 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 15:11:18.18 ID:U3ebhjnw.net] そろそろD言語推しが参戦しそう swiftスレの荒しが波に乗らなくて遊びにきたんだろうから、少し待てばまたあっちに戻ると思うよ
540 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 19:22:05.86 ID:cQa0oJ+5.net] >>528 どうせクソコードなんだろう 無能のクセに文句だけは一流
541 名前:デフォルトの名無しさん [2017/02/23(木) 19:36:29.28 ID:9wlFqT9C.net] >>519 >人気水増ししたら何かいいことあるの? Rustライブラリの開発者が増える→ライブラリが充実する
542 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 20:03:57.20 ID:cNXolJMY.net] Rust勉強したら何が作れんの? C#とJSで何でも作れるご時世で
543 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 20:11:53.29 ID:eZ3ictl+.net] 「言語Aで何でも作れること」と、「言語Bで作れるもの」に どういう関係があるのか
544 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 20:15:09.50 ID:zngwxGAX.net] 実際にお前らが何を作ってるのかは気になるな crate公開したりしてんの?
545 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 20:25:56.16 ID:LSEhsWdS.net] >>530 そういう、Rustコンパイラ通らなきゃクソコードって思い込みが一番腹立つんだよ
546 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 20:42:34.44 ID:oSrrQwof.net] >>535 でもそうなんでしょ?
547 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:00:48.13 ID:LSEhsWdS.net] >>536 Cでバグなく動いてたコードが移植できない時点でな。
548 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:06:08.32 ID:SG08isVj.net] 動いてるだけで、そのコードバグ有るんやで。 お前には分からんのだろうが
549 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:06:35.79 ID:FuQeN9Oq.net] へえバグないんだ良かったじゃんわざわざRust使わなくても済むね >>534 人に尋ねるときはまず自分から晒すのが礼儀やで
550 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:11:35.09 ID:LSEhsWdS.net] そうだよ。だからずーっとRustは使う必要ない、つーかそもそも言語として欠陥品、クソモジラのステマで流行ってるように見えてるだけだ っつってんのに、誰一人まともに聞きやしねえ。 まあこんなスレで称賛してるあたりステマ部隊なんだろうが。
551 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:15:20.74 ID:vAxbMLg6.net] ID:LSEhsWdS 今日の患者さんはなかなか元気だな。
552 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:15:27.70 ID:eZ3ictl+.net] どうせRustがスタンダードになることは無いんだから 嫌なら使わないで済ませられないの? 周りに熱心な布教野郎がいて迷惑してるのか
553 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:17:02.17 ID:kHt4tzR1.net] Rustの美しさを一つあげたい それはクロージャの記述 // rust let f = |x| x + 1; // 美しい f(123); // 美しい g(|x| x + 1); // 美しい # ruby f = lambda {|x| x + 1} # 汚い f = ->(x) {x + 1} # おぞましい f.call(123) # 汚い f.(456) # 見苦しいドット f[789] # 悲しい g {|x| x + 1} # 見苦しい中括弧 // javascript var f = x => x + 1; // 見苦しい矢印 f(123); // 美しい // c++ auto f = [](int x) -> int {return x + 1;}; // もはや悲惨 f(123); // 美しい
554 名前:デフォルトの名無しさん [2017/02/23(木) 21:19:45.77 ID:sZtROie8.net] C++の -> int は省略できるやろ
555 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:30:27.03 ID:LSEhsWdS.net] >>542 周りっつーか上司が誰に吹き込まれたのか既存のC資産をRustに書き換えろとかふざけた話を下ろしてきた。 チーム全員現在進行形でぶちギレてて今度上司の上司と話つける予定よ。
556 名前:デフォルトの名無しさん [2017/02/23(木) 21:35:29.77 ID:sZtROie8.net] >>545 なにそれ、Rust使ったことなくてスレ見てるだけだから別の言語覚えながらリファクタリングとかむしろ羨ましいんだけど。
557 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:36:35.33 ID:eZ3ictl+.net] >>545 あぁ、マジで実害あるのか… でも上司だってこのスレ見て決めたわけじゃない、ここで憂さ晴らししてもしょうがないだろ まあ大変だろうが頑張ってくれ
558 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:37:38.93 ID:LSEhsWdS.net] >>546 なんだ使ったことないのに称賛してたのか。 関数一つ移植するのに半日とかザラで発狂しそうになるぞ。 悪いことは言わんから本当にやめとけ。
559 名前:デフォルトの名無しさん [2017/02/23(木) 21:38:33.89 ID:sZtROie8.net] >>548 え?称賛なんかしてないけど?
560 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:41:45.75 ID:LSEhsWdS.net] >>549 うらやましいとか言われたからRust好きでたまらんのかと思ったわ。
561 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:48:04.84 ID:DPtsYYmf.net] LSEhsWdSはプログラミングセンス無いからこの業界辞めた方がいい
562 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:49:23.09 ID:TLItgOP3.net] 元コードにバグがないと仮定して、CコードがRustに移植できない例考えてみたが、 グローバル変数にバッファプール置いてるとかだと確かにストレートな移植はできなさそうだな。
563 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:54:24.67 ID:LSEhsWdS.net] >>551 Rust基準でプログラミングセンス語るクソモジラ信者乙。
564 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 21:58:31.77 ID:zngwxGAX.net] 合わない現場で無理やり使わされてるってことなら災難だね 分かったからここで鬱憤を晴らすのはやめてくれ
565 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:04:06.85 ID:TLItgOP3.net] LSEhsWdSがブチギレてることは伝わったが、その怒りは言語じゃなくて上司に向けるべきなんじゃねーかな。
566 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:05:57.88 ID:NuCuZGCr.net] マ板でやれ
567 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:08:46.56 ID:SG08isVj.net] >>555 ID:LSEhsWdS にそれが出来たら、こんなところで暴れてないんだよなあ。
568 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:09:53.57 ID:cNXolJMY.net] Rustのどのへんがぶちギレポイントなのか詳しく それなら少しは有意義やろ?
569 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:14:46.67 ID:X5Zb9v7q.net] >>525 homuの作者
570 名前:543 mailto:sage [2017/02/23(木) 22:17:35.80 ID:kHt4tzR1.net] もいっちょRustのいいところ foldの自然さ // rust let a = [1, 2, 3].iter().fold(100, |acc, x| acc + x); // 美しい # ruby a = [1, 2, 3].inject(100, :+) # 文句は無い b = [1, 2, 3].inject(200) {|acc, x| acc + x} # 初期値とブロックを離して書くのが寂しい (* OCaml *) let a = List.fold_left (+) 100 [1; 2; 3];; (* 文句は無い *) let b = List.fold_left (fun acc x -> acc + x) 200 [1; 2; 3];; (* funと->がやっぱり気になる *)
571 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:32:19.67 ID:K3Cm2dt
] [ここ壊れてます]
572 名前:r.net mailto: >>552 ノード間のリンク構造が頻出してると、移植できなくはないが、Rust初心者はコンパイルできなくて詰む あと、変数を強引にキャストしまくってるようなやつは、移植初心者にはつらそう [] [ここ壊れてます]
573 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:43:51.07 ID:8gwVa+zN.net] syntax気にするだけならsmalltalkやるよろしアル
574 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 22:49:52.60 ID:rTUbWHRo.net] >>558 borrow checkerにマジでキレる5秒前 なんかrustコーディングしてるとあいつとアームレスリングしてる気分だよ
575 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:12:24.86 ID:ItvUsJzd.net] グラフ構造とか他のメンバ変数への参照をメンバ変数に持ってる構造体とか あと、borrow checkerに怒られる場合にその箇所の修正だけで済むのか根本的に間違ってるのか分からないことが多くて困ることが多い
576 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:26:16.38 ID:TLItgOP3.net] 確かに構造体の中に何らかのデータの借用持ってるとだいたい頭がおかしくなって死ぬな。
577 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:27:05.57 ID:9wlFqT9C.net] >>560 JavaScript var a = [1,2,3].reduce((acc,x)=>acc+x, 100);
578 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:28:39.85 ID:zngwxGAX.net] Rustの良さは徹夜明けに書いたコードでもSEGVらない安心感()
579 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:33:26.07 ID:JrwuNkgj.net] 移植だけなら全部unsafeにすればわりと機械的に出来るような気も。 そのあとリファクタリングでunsafe取っていくかそのまま放置かは状況次第だけど。
580 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:35:46.51 ID:9wlFqT9C.net] nullチェック機構がどれだけ強固になろうともそれを回避する手段が容易であれば糞プログラマを排除しないかぎり糞コードは量産される
581 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:42:42.37 ID:UGVUxePL.net] JavaScriptなんて使うくらいならいっそCとEmscriptenで書きたいわ
582 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:45:15.15 ID:TLItgOP3.net] >>570 ところでRustとEmscriptenでWebasm吐くって出来るんですよね。
583 名前:デフォルトの名無しさん mailto:sage [2017/02/23(木) 23:58:21.84 ID:DPtsYYmf.net] その言語にはその言語の書き方考え方というのがある 高級言語使いが低級言語を使えない言語扱いしてるのと同レベルの幼稚な文句 ただひとつ言えるのはこいつは無能でセンスもゼロ
584 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 01:32:47.64 ID:/cLlv/nZ.net] >>543 > // rust > let f = |x| x + 1; // 美しい この |x| x + 1 のどこが美しいか理解不能 この後で悲惨と書いてるC++のと50歩100歩のアドホックな書き方 Schemeなどの (lambda (x) (+ x 1)) のほうが遥かに構文が統一的で美しい
585 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 08:44:12.21 ID:F/TDaiUX.net] rustってJavaからJNIでCを呼び出すのと何が違うのっと
586 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 08:46:52.43 ID:VQegiGIK.net] 何を煽りたいのっと
587 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 10:20:37.37 ID:Lvwt6BNZ.net] >>574 1. Rustはネイティブコードにコンパイルされる 2. Rustの構文制約はJavaと比べ物にならないほどキツい(良し悪しはともかく) 3. Javaのほうが圧倒的に過去資産がある こんなもんか
588 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 11:20:14.42 ID:Eio5IVQ5.net] |x|は単純に?ってなるよな なんでここだけRubyなんだと。他はC系かML系風味なのに。激しく浮いてる C++ですらunified(笑)とか言って普通の関数とクロージャを近付けようとしているのに それとは別に、開き括弧と閉じ括弧が同じなのも後々困らねーかと思ってしまう
589 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 14:20:48.79 ID:fnwYTLZ/.net] 構文はもっとMLに寄せてほしいなあ
590 名前:{ } とか見たくない [] [ここ壊れてます]
591 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 17:22:18.52 ID:sBRqP5fz.net] do end よりは {} のほうがマシ (個人的に)
592 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 17:24:16.93 ID:t5bNNBCg.net] シンタックスの話をしだすと結局好みの問題に落ち着く
593 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 18:23:00.24 ID:Eio5IVQ5.net] C++がtemplateと<< >>演算子で散々苦労しているのを見た後で わざわざそれを踏襲したりするのは悪い方の好みじゃね?
594 名前:543 mailto:sage [2017/02/24(金) 18:39:46.43 ID:zaWF9UZ/.net] 手のひら返し:クロージャの表現はやっぱML系のほうが優れてる可能性 クロージャを返すクロージャというふうに、連なったときの表現を見る (* OCaml ウルトラスムーズ。呼び出し部分もシンプル *) let f = fun x -> fun y -> fun z -> x + y + z;; print_int (f 1 2 3);; // rust move無しで書けたならよかった? // |x| |y| |z| x + y + z; ←うーん? let f = |x| move |y| move |z| x + y + z; println!("{}", f(1)(2)(3)); # ruby こうして見ると意外な統一感を感じなくも無い f = lambda {|x| lambda {|y| lambda {|z| x + y + z}}} p f.(1).(2).(3) >>573 rustのが断然シンプルだと思うけど(構文の統一感とやらについてはさておき) あとlisp系言語の中でSchemeだけがクロージャの扱いが自然なんだっけ? ちなみにまったく理解してないし、しかも聞きかじりで、多分記憶違いだけど >>577 そもそもはSmalltalkのブロックの中の縦線なのかなぁ
595 名前:デフォルトの名無しさん mailto:sage [2017/02/24(金) 23:22:20.10 ID:yM4uvxXG.net] >> 582 > そもそもはSmalltalkのブロックの中の縦線なのかなぁ それならこうした方が自然。 let f = :arg1 :arg2 arg1 + arg2; let f = :arg1 :arg2 { arg1 + arg2 }; それよりこっちの方が良い let f = (a, b) -> a + b; `-> T`が戻り値の型の宣言だからこれはないだろう。 こうもならないだろうね。 let f = [ :a :b | a + b ]; 無名関数の引数が:arg1で空白区切りは発狂するやつが出る。 matzがなぜ無名関数の引数リストにSmalltalkのブロックの引数リストの構文じゃなくて 一時変数の宣言の構文を使ったかはわからん。
596 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 00:07:58.70 ID:jGQ3Wak9.net] `:arg1` は型注釈と混同する ラムダ計算風に `let f = \x y. x + y` はどうかな
597 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 01:20:07.77 ID:hUBRL+mA.net] パラレルワールドのrust文法を議論してて草生える お前らは何年前に分岐した世界線にいるんだw
598 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 04:54:52.43 ID:nJl4hm2p.net] 何で新しい言語が創られるかといえば、それはもう、C++コードのメンテから解放されたいという宿願のためでしょ
599 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 19:53:48.61 ID:jxiHI5n5.net] しかし名前が良くないなこの言語は なんでまたこんな名前にしたんだろうか
600 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 20:15:31.45 ID:FTYjcOZq.net] 俺は名前は好き 四文字でさえあればいいと思ってる それよりも嫌なのはifの波括弧 短く書きたいときCなら if (cond) foo(); else bar(); で、目に優しい if cond {foo();} else {bar();} これはたまらなく苦痛 C方式に戻してもらうか三項演算子の導入をしてほすい
601 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 20:19:33.66 ID:FTYjcOZq.net] https://doc.rust-lang.org/book/if.html let y = if x == 5 { 10 } else { 15 }; // y: i32 ↑これよりはやっぱ↓ let y = x == 5 ? 10 : 15;
602 名前:デフォルトの名無しさん [2017/02/25(土) 20:37:24.76 ID:gF7KaGBm.net] >>588 それがC言語でどれだけのバグを生み出してきたか考えたら有り得ないと思うのだが。 ”俺は間違わない?” だったらC使ってればいいんじゃね?
603 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 20:39:21.20 ID:FTYjcOZq.net] >>590 どれだけのバグを生み出してきたの?
604 名前:デフォルトの名無しさん [2017/02/25(土) 20:42:35.76 ID:gF7KaGBm.net] >>591 qiita.com/tomohisaota/items/e6995e89b843e1295c08
605 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 20:43:00.57 ID:AAACSty6.net] 適用の順序が一見して分からないケースがあってクソ
606 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 20:48:49.11 ID:FTYjcOZq.net] >>592 ほえー あーifに波括弧大事、これがあるからやっぱ波括弧大事だなぁ 波括弧ないからこそこんなことになっちゃうんだなぁ 波括弧さえあればこれ避けられたのになぁ 波括弧無しのifなんてあり得ないよなぁ ってこと? あとはどれだけのバグを生み出してきたの?
607 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 20:58:23.81 ID:AAACSty6.net] >>592 を一般化した if (cond) foo(); bar(); の形式(ただし全角スペースはインデントの代わり)のバグはAppleの例に限らず普遍的なものだろ
608 名前:デフォルトの名無しさん [2017/02/25(土) 21:03:09.97 ID:gF7KaGBm.net] >>594 多くのコーディング規約で禁止されてる。(例えばGoogle C++ Style Guideとか)。 わざわざそういう項目がある理由は、まぁ言わなくても解るよね?
609 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:04:36.43 ID:OjMnqw5o.net] 僕はそんなコード絶対に書かないしレビューでも見落とさないんですうううううう!!!!! 万一紛れ込んでもテストで拾うしっ!!!!!!!!!!
610 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:08:17.05 ID:FTYjcOZq.net] >>596 ちょっと茶化したけど、理屈は分からないというわけではないよ 実際にrustのifがこうなってる経緯は知らないけど 現状について少なくともそういう視点で支持する意見があるのは正直驚いた 勉強になりました
611 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:11:22.58 ID:ihKm/PIs.net] ifのやらかしは有名なプロジェクトでもあったりするよね
612 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:16:11.60 ID:oY1Z/R8w.net] 別に見づらくないじゃんって意見のほうが多数な気がするけど https://github.com/rust-lang/rust/issues/1698
613 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:17:27.66 ID:A0aZ5Z9S.net] ブレインファックじゃないんだから、人間に読めるコードとなる言語仕様が必要
614 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:20:30.53 ID:AAACSty6.net] まあ実際のコードでは無理に一行にまとめず5行に分けろってことだな let x = if cond { f() } else { g() }; もしf(cond ? g() : h())みたいな形で使おうと思っていたのなら、そもそもそれ読みづらいから一旦バインドしてからその結果を使おう let x = if cond { g() } else { h() }; f(x);
615 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:22:26.82 ID:oY1Z/R8w.net] あと波括弧外せるようにする提案はここにあるから+1しとけ https://github.com/rust-lang/rfcs/issues/1616 めっちゃ劣勢だけど
616 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:30:13.94 ID:FTYjcOZq.net] >>602 一点だけ let x = if cond { g() } else { h() }; f(x); ↑これよりやっぱ↓これが読みやすい(個人の感想です) f(cond ? g() : h())
617 名前:デフォルトの名無しさん [2017/02/25(土) 21:51:13.57 ID:gF7KaGBm.net] f(cond ? g() : h() ? q() : r() ) と書く奴が現れるデメリットの方がでかいと思うわ
618 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 21:53:07.56 ID:OjMnqw5o.net] そしてfだのgだのが本当にただの関数呼び出しであるケースは少ないという
619 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 22:40:54.42 ID:Cjys9ebm.net] 波括弧外せなくてもいい派だけど、 三項演算子は何かいい感じのやつを追加してくれ
620 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 22:48:27.45 ID:jxiHI5n5.net] if式なら三項演算子はいらないよ
621 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 23:00:24.91 ID:BrkcZ5hg.net] if-elseの波括弧外したらtype ascriptionが曖昧になる。
622 名前:デフォルトの名無しさん [2017/02/25(土) 23:54:27.38 ID:+Hmh+RyZ.net] >>604 ioでも使ってろ
623 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 23:57:17.74 ID:jxiHI5n5.net] f( if cond { g() } else { h() } )
624 名前:デフォルトの名無しさん mailto:sage [2017/02/25(土) 23:58:32.04 ID:0X9bWbPB.net] 3項演算子とか、関数型の基本のif式(if文じゃないよ)なんだけど、サポートしてねえのかよ
625 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 02:13:52.49 ID:Xq2/OYkK.net] 三項演算子なんてifが文になってる言語でようやく存在を許されるものじゃねえか 波括弧をダサいというのは分かる
626 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 02:26:37.59 ID:kIbkRe9i.net] if x > 0 { x } else { -x } if (x > 0) x else -x 個人的にはブレースなしだとelseの前後1トークンの範囲の視認性が低く感じる
627 名前:デフォルトの名無しさん [2017/02/26(日) 02:27:19.95 ID:hKGUofZ0.net] if文はSwiftやGoとの差別化をしたいってこと?
628 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 11:17:28.79 ID:dRlELnWs.net] 波括弧省略はLinuxカーネルの連中が使い続けてる。 奴ら頭良いからあれでも上手く回ってるんだろうな。 逆に、波括弧省略するなって言われてる奴らは信用されてないってことなんだよ。
629 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 11:28:50.68 ID:kIbkRe9i.net] そうだね 俺は当然ながら、例えばGoogleの人たちなんかよりよっぽど頭が悪いからブレースは省略しないよ
630 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 12:56:41.32 ID:ilyf8Ugu.net] 自覚があるのはよろしい 頭の悪い人は無理に波括弧省略しなくていいんだぞ だれもそれを咎めはしないし止めもしない
631 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 13:14:04.69 ID:j+1S0ikr.net] ソース管理がしっかり運用されてると 空の波括弧さんありがとう!!と感謝する機会が多くなる
632 名前:デフォルトの名無しさん mailto:sage [2017/02/26(日) 13:42:37.90 ID:n9+kiTzj.net] if文の波括弧は例え1行でも省略すべきではないな
633 名前:デフォルトの名無しさん [2017/02/26(日) 13:57:31.18 ID:AijJH6kn.net] >>616 残念だけど常に付ける派だが省略するななんて言われたこと無いからそんな煽り無駄 それに自分だけじゃないんだよ。信頼出来るメンバーだけで開発するならRustを使う必要なんてない。
634 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 14:37:50.15 ID:8fV4SlqM.net] >>588 激しく同意
635 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 14:55:00.32 ID:IwI2aqEg.net] ifの波括弧強制は多いに賛成 Rustは設計思想からして堅牢性が重視する言語なので むしろ波括弧無しは設計思想に反する構文
636 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 18:31:01.83 ID:3oI2dcr0.net] SwiftもGoもモダンな言語のifは{}必須だからRustもそうなんだろう
637 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 19:58:29.36 ID:LZ77JUIB.net] ちなみにOCamlだと ttps://ocaml.org/learn/tutorials/if_statements_loops_and_recursion.ja.html#beginend let max a b = if a > b then a else b;; でありウルトラシンプル 複数にしたいときは丸カッコかbegin-end if 1 = 0 then print_endline "THEN" else begin print_endline "ELSE"; failwith "else clause" end;; if 1 = 0 then print_endline "THEN" else ( print_endline "ELSE"; failwith "else clause" );; こういう世界だと波括弧よりもbegin-endがシックリきてるように見えなくもない
638 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 20:06:13.47 ID:zLpKV4Hz.net] 英数字が多過ぎて慣れてないと通常の識別子と瞬時に弁別できない
639 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 21:47:19.08 ID:C84dJOXo.net] 慣れ慣れ 冷静に考えてみ?中括弧だって別に見やすい記号じゃない
640 名前:デフォルトの名無しさん mailto:sage [2017/02/27(月) 23:55:54.57 ID:/1/jo1+J.net] シンタックスハイライトの有無で全然違う
641 名前:デフォルトの名無しさん mailto:sage [2017/02/28(火) 00:02:16.49 ID:JC90/ck5.net] >>627 俺も慣れだと思う 括弧あった方が統一性があって俺はむしろ見やすい
642 名前:デフォルトの名無しさん mailto:sage [2017/02/28(火) 00:20:31.68 ID:hQ8vIQRp.net] wwwww
643 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 13:27:14.36 ID:dbhoX2Op.net] 今の日本のRust界隈って、LT会を開いて100人は集まるくらいの規模なのか https://rust.connpass.com/event/48826/
644 名前:デフォルトの名無しさん mailto:sage [2017/03/01(水) 14:13:16.39 ID:SH8mWFxK.net] >>631 そういうのに集まるのって、入門が趣味の人でしょ
645 名前:デフォルトの名無しさん [2017/03/01(水) 22:45:28.30 ID:gWF4n/wu.net] 誰だって最初は入門から始まる。 臆するな、前へ進めよ。
646 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 17:47:06.67 ID:5xdornxH.net] Rust Language Server alpha 2がリリース。かなりインストールしやすくなってる https://github.com/rust-lang-nursery/rls
647 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 18:10:52.07 ID:io4sIXyE.net] C++とかから来た人はrustでも波括弧使わせられるの?やだーwのイメージ
648 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 19:04:04.08 ID:u/9aEmwY.net] sever-clientモデルのコンパイラってどうなんだろうね 一周回ってクライアントモデルが良いなってことにならなければ良いけどと心配してる
649 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 19:24:21.19 ID:dGAZp2xa.net] 文字セットが貧弱でCのトライグラフ使ってた時代を思い出せ、とか
650 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 22:21:45.15 ID:TuErB/Pj.net] >>636 language server protocolはコンパイラじゃない。 rustだけのものじゃないし。
651 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 23:53:09.94 ID:unB1K5KY.net] ビルドツールって言い回しでもいいけど、結局そういうモノが使えるのかという疑問なんだが MSが切った規格っぽいけど、MSは使ってて流行ってるのかねぇ
652 名前:デフォルトの名無しさん mailto:sage [2017/03/02(木) 23:58:57.23 ID:5xdornxH.net] 流行るかどうかは知らんが、使って見た感想としては、racerで不十分だったエラーチェックやgo to definitionとかもあってそれなりに快適 不満があるとすれば、初期化に時間がかかる(ただし2回目以降は少し速い)のと入力の度の解析に少し時間がかかる(ただしcargo checkよりは速い)のとキャッシュがクソでかいところかな
653 名前:デフォルトの名無しさん [2017/03/03(金) 02:48:30.02 ID:NOi6E2uI.net] Rust(錆) 流行ることなく誰にも使われず錆びていくプログラミング言語、それがRust ルストハリケーン
654 名前:デフォルトの名無しさん [2017/03/03(金) 02:50:44.93 ID:8SEA7Mtt.net] language server protocolはビルドツールでもない。 エディタでコード補完とかフォーマットとか(VisualStudioのIntellisenseのようなもの)を実現するためのプロトコル。 エディタの機能拡張のためのものだよ。
655 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 05:22:56.35 ID:Mo/AGisi.net] Ryzenなら、rustcも爆速になる? https://twitter.com/FuAnTaJi/status/837313090190467072
656 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 05:26:52.91 ID:bMgzQydB.net] Rustスレで語るほどの話題でもないな
657 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 05:46:13.37 ID:Dlw1K2JE.net] >>642 話がズレてんぞ 「Rust Language Server」(ソフトウェア)の利便性/実用性を問うているのであって 「language server protocol」(プロトコル)の利便性/実用性を問うているんじゃない >>640 ああ、キャッシュはクソでかいのか... 元コードや依存crateに比例するだろうけど多少の利便性のために使って良いものか微妙なのかなぁ
658 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 06:25:02.22 ID:bMgzQydB.net] まあクソでかいと言ってもdebug buildのキャッシュに少し欠けるくらいだけどね 逆にいえばdebug buildと同等のオーダーで容量を食うということだが
659 名前:デフォルトの名無しさん [2017/03/03(金) 08:53:13.29 ID:8SEA7Mtt.net] >>645 ビルドツールとかいって何に使うものかも解ってない >>639 みたいなのが居たから書いたのに話がずれてるって…
660 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 09:37:43.14 ID:NTvASRIg.net] それでもその程度(debugビルド)か 提供体系変えたからってそれ以上は減らないだろうから 結局は、サーバクライアントモデルにメリットがあればって所なのな, 情報thx
661 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 10:21:19.53 ID:Ufz5V5uO.net] LSPをサポートしてれば、エディタ/IDEそれぞれに特化したプラグインを作らなくていいところが良い まあracerもそうだけど。後は非同期的なのも重い処理にはいいかもね
662 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 18:34:23.36 ID:NTvASRIg.net] IntelliJのRustプラグインはRLS対応メンドイから当分見送りな!とか言ってるんだよねぇ エディタ/IDEのフロントエンドは作り込み必要だし、LSP共通でできることって結構薄いレイヤーなんだろうな
663 名前:デフォルトの名無しさん mailto:sage [2017/03/03(金) 23:51:37.58 ID:JBnTbtYi.net] Rainicorn開発して自前でon the fly error checkやってたRustDTが LSPが発表された途端にRustLSP開発始めたのにRLSがでてきて完全に沈黙中。 (´・ω・)カワイソス LSPはリファクタに使える問い合わせもできるから RLSとIDE側が対応すればrustのツールで初めてのリファクタ機能が現れるかも。
664 名前:デフォルトの名無しさん [2017/03/08(水) 03:21:51.70 ID:DeDFMxZF.net] i.imgur.com/WTFdXwM.png Rustのメモリ管理が良く分からないので 脳内整理してみたけどよく分からない
665 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 07:03:46.86 ID:jgMpoXzS.net] このごちゃごちゃで整理とか笑える。
666 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 07:23:54.02 ID:CjJNAnlh.net] コメ返してるのウケる
667 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 07:26:21.29 ID:fOyT060n.net] こ、コメ
668 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 10:47:45.16 ID:6Gp+/qzY.net] よく分かってないから脳内整理もぐちゃぐちゃになってるのではなかろうか rustはマルチスレッドに影響受けることはないし、他にも理解が出来てない所が多そう 公式ドキュメントが分かりやすいからきちんと読み直したら? https://doc.rust-lang.org/book/ >>654 ワロタ
669 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 13:45:42.21 ID:68sDUGxJ.net] 何が分からないのか分からない状態。borrowじゃなくてownershipが分からないのか、スタックとヒープが分からないのか。
670 名前:デフォルトの名無しさん mailto:sage [2017/03/08(水) 13:59:22.48 ID:jMX+hATM.net] >>652 java臭い
671 名前:デフォルトの名無しさん mailto:sage [2017/03/10(金) 08:50:25.22 ID:mPQwWGXM.net] >>455 JavaにはJapanese Eraあるな
672 名前:デフォルトの名無しさん [2017/03/11(土) 03:15:58.35 ID:ls0F4O8F.net] Rustで作ったプログラムを公開するとき Rust自身のライセンス文書と crateで含めた各パッケージのライセンスと各パッケージが依存するパッケージのライセンスを 含める必要があると思うんですが それらのライセンス文書をかき集めるcargoのコマンド等あったりしますか? ( ~/.cargo/registry/src/ 下にパッケージのソースファイルやライセンスファイルがあるのは分かってるんですが手動で集めるのは面倒なので・・・)
673 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 08:13:55.49 ID:kL5whW8F.net] HyperのTokio化が間近まで迫っているわけだが、かなり仕組みが変わってて対応が面倒臭い
674 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 08:15:11.10 ID:x2OoeTeG.net] DASH言語
675 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 08:16:44.20 ID:hkT0qMWn.net] そういえばhyperってcharsetから自動でデコードしてくれないのかな
676 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 08:19:31.82 ID:qKzUYLvE.net] >>662 まずは言語を動かすプロセッサーを作るための半導体から調達するのかな
677 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 08:24:05.78 ID:kL5whW8F.net] Charsetはhyperの領分からはかなりかけ離れてるんじゃないかねえ。reqwestですら対応しなさそう
678 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 08:46:49.37 ID:qKzUYLvE.net] charsetは別に良いけど、Content-Encodingは対応してくれないのかなぁ
679 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 09:04:48.56 ID:kL5whW8F.net] >>666 gzipに関してはreqwestのupstreamで既に対応している https://github.com/seanmonstar/reqwest/pull/61 いつリリースされるのかは分からん
680 名前:デフォルトの名無しさん mailto:sage [2017/03/11(土) 12:10:28.94 ID:nSjuwCRc.net] reqwestにモリモリとFeature Request投げつけて肥大化したライブラリにすればいいんじゃないかなぁ! それを横目に、reqwestに代わる極最低限の機能をピックアップできるライブラリの登場を期待したい tomlのoptionalで切れるのでもいいんだろうけど、crate分けてくれた方がrustらしい気がする
681 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 13:51:15.74 ID:oPHiMgG4.net] Rayonの1.0 milestoneが残すところドキュメント関連のみとなって1.0が秒読みという感じでとてもよろしい SerdeだのHyperだのRayonだのという目玉crateが軒並みpre-1.0なままなのは気持ち悪いからなあ
682 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 15:37:08.34 ID:O3/Gyy1q.net] Windows版はVisual C++ 2015 Build Toolsをインストールする必要があるってことだけど、 これのライセンスってどうなってるの? Communityと同じだったらうちの会社じゃあ使えないことになるけど、はっきり書いてある ところが見つからない。
683 名前:デフォルトの名無しさん [2017/03/12(日) 15:41:23.49 ID:U4Jjwa7O.net] >>670 インストーラーが表示しないの?
684 名前:デフォルトの名無しさん mailto:sage [2017/03/12(日) 17:13:31.76 ID:O3/Gyy1q.net] なるほど。ライセンス条項を表示して「同意する」にチェックを入れさせるいつもの奴じゃないから スルーしそうになったけど、いちおうリンクが見つかった。ありがとう。
685 名前:デフォルトの名無しさん mailto:sage [2017/03/14(火) 00:27:55.78 ID:olV+TTff.net] #[allow(unuseed_variables)] じゃなくgolangみたいに let _ = hoge; とプレースホルダでコンパイル通したりする?
686 名前:デフォルトの名無しさん mailto:sage [2017/03/14(火) 00:32:20.78 ID:UwSzXh4Z.net] >>673 それでも良いし、let _piyo = hoge;でも良い
687 名前:デフォルトの名無しさん mailto:sage [2017/03/14(火) 22:39:18.78 ID:pGPNuxtq.net] ていうかallow(unuseed_variables)とプレースホルダはぜんぜん違うぞ
688 名前:デフォルトの名無しさん mailto:sega [2017/03/14(火) 22:54:53.45 ID:UwSzXh4Z.net] まあ確かに、unuseed_variablesなんてlintはないしな
689 名前:デフォルトの名無しさん mailto:sage [2017/03/15(水) 09:52:08.89 ID:65dLeHL5.net] うぬ種(unuseed)、、、これには深い秘密が unused_variablesとプレースホルダ、ワーニングを消すために使うなら同じバイナリ出力するがな traitのインターフェース切る時はプレースホルダ使ってる
690 名前:デフォルトの名無しさん mailto:sage [2017/03/16(木) 22:41:36.30 ID:KeMWtB7g.net] そういえばC++だとリリースビルドで消える変数はmaybe_unusedいるんだよな。rustかしこい!
691 名前:デフォルトの名無しさん mailto:sage [2017/03/17(金) 03:23:47.24 ID:bRwtX1Af.net] Announcing Rust 1.16 https://blog.rust-lang.org/2017/03/16/Rust-1.16.html ・staticとconstのlifetimeがデフォルトで'staticになった(RFC 1623) // つまりこれが const ENC: &'static [u8] = b"0123456789ABCDEF"; // こう書ける const ENC: &[u8] = b"0123456789ABCDEF"; ・consider using an explicit lifetime的なメッセージを廃止(不正確な内容を吐くことがあるから。将来安定すれば復活の可能性あり) ・cargo checkが追加(実際にコンパイルせずにコンパイルが通るかの検査だけを行う。cargo buildより時間の短縮が見込める) ・Cargo.tomlのpackage.categoriesがstableでも有効に
692 名前:デフォルトの名無しさん mailto:sage [2017/03/17(金) 21:17:58.70 ID:OBbyZsQw.net] b‘\x0a‘を”a”に一発で変換する関数ってライブラリにある?自分で書かないと無理?
693 名前:デフォルトの名無しさん mailto:sage [2017/03/17(金) 21:33:20.90 ID:bRwtX1Af.net] format!("{:x}", b'\x0a')
694 名前:デフォルトの名無しさん mailto:sage [2017/03/17(金) 22:53:52.43 ID:OBbyZsQw.net] >>681 マジでありがとう こういうときはformatなのね
695 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 00:10:31.46 ID:c1jSzzlC.net] cargo checkサブコマンド、エラー内容によっては挙動がおかしいんだよね。 cargo test --no-runなら完走する。それかrustcは問題ないから直接rustc叩く。 infinite typeが循環してるとrustcが止まらないのと組み合わさると rustcがcargoに制御返さない→cargoが無言決め込むになって何が起こってるのかわからなかった。 >>682 自前で弱い動的型付け言語並みのto_string()実装しても良いんだぜ?
696 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 01:29:52.32 ID:ZU/olwx/.net] 標準ライブラリでは任意の記数法(62進数とか)を扱えないから自前でフォーマッタを定義してちょいちょいする羽目になることがある std::fmt::fmt_radixは1.9で消えちゃったから、この手のものを公式で提供する気はなさそうだし
697 名前:デフォルトの名無しさん [2017/03/18(土) 02:04:48.97 ID:sCZDN2Pv.net] Hideyuki Tanakaさんのツイート: "https://t.co/EoxWy8cSvV 多くのベンチでRustがC++より高速なコードになってきたみたい。" https://twitter.com/tanakh/status/842326121647505408?p=p
698 名前:デフォルトの名無しさん [2017/03/18(土) 10:03:15.93 ID:cTWPUp3Z.net] >>685 いいね
699 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 10:48:58.61 ID:HHPgXzoi.net] vec![“data”,“chou-data” ...みたいなのがあって 出現する要素の数をカウントする一番賢い方法ってなんじゃろ?
700 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 10:53:52.98 ID:ZU/olwx/.net] vec.iter().filter(|&&s| s == "predicate").count() とか?
701 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 11:13:48.52 ID:HHPgXzoi.net] 要素全てのカウントで “data”は3回 “chou-data”は20回という情報が欲しいです mutなHashMapでシコシコカウントですかね?
702 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 11:26:04.35 ID:G5NG4rX0.net] multisetは使えない? 外部クリートを使うことになるけど
703 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 11:36:10.64 ID:Y4C9s3ir.net] てかそもそもどういう操作にどのくらいの計算量を要求しているのか言ってくれないと答え損にしかならないというか
704 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 11:40:29.03 ID:DBFuVmGN.net] 要素→int のマップを用意して、配列の頭から走査して行って出現ごとにインクリメントが正道じゃね。
705 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 11:49:38.08 ID:HHPgXzoi.net] ありがとうございます とりあえずmultisetのソース見て勉強してきます
706 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 18:38:07.11 ID:zyxHQlVL.net] “data”と“chou-data”の2種類しかないなら一方だけ数えて全体の要素数から引けば両方求められるんじゃね
707 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 19:49:33.18 ID:PBtATWqK.net] ゲームとか作るのにはまだつらい感じ?
708 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 22:51:11.48 ID:kQkqB4BZ.net] ss
709 名前:デフォルトの名無しさん mailto:sage [2017/03/18(土) 23:36:17.52 ID:Cy4FObwW.net] そういえばコレクション操作で統計用の述語足りてないよね。 他にもあらゆる標準ライブラリ的なものが足りてないからそういうライブラリばかり作られてるんだけど。 >>695 pistonに一通りある。
710 名前:デフォルトの名無しさん mailto:sage [2017/03/19(日) 06:16:46.07 ID:Q49RXSlY.net] Nightlyでcargo updateをしようとしたら thread 'main' panicked at 'called `Option::unwrap()` 云々とか出てきて何事かと思ったら、どうやらRust TeamがGitの操作をミスってnightlyが壊れてたらしい https://github.com/rust-lang/rust/pull/40625
711 名前:デフォルトの名無しさん mailto:sage [2017/03/21(火) 23:01:00.46 ID:hxyeHBes.net] 高階関数に渡す述語のinline属性の指定にかかわらず そこだけ必ずインライン化するか必ずインライン化しないか指定する方法ない? Option::map_or_elseに渡すdefault引数とf引数がinline属性付いてるけどインライン化させたくないんだけど。
712 名前:デフォルトの名無しさん mailto:sage [2017/03/24(金) 07:34:18.46 ID:yNGhLANb.net] Stack Overflowの調査でまたしてもRustが最も好まれている言語になった https://stackoverflow.com/insights/survey/2017#technology-most-loved-dreaded-and-wanted-languages が、エンタープライズでの採用例が少ないのだからユーザのうち好んで使っている人の割合が高まるのは当然っちゃ当然だわな
713 名前:デフォルトの名無しさん mailto:sage [2017/03/24(金) 08:53:30.74 ID:mOA6Vf99.net] みなさんfloatのベクタのソートについてどう思ってるの?
714 名前:デフォルトの名無しさん mailto:sage [2017/03/24(金) 14:35:58.01 ID:pHNq00OZ.net] >>683 こば?
715 名前:デフォルトの名無しさん mailto:sage [2017/03/24(金) 19:39:57.65 ID:YSCc9yI+.net] >>700 良い言語なんだけどまだ安定感が足りない感じなんだよなぁ、web系だとclojureがイミフな位安定感あるのと違って rustはもっと期待されている分バージョン間の差違に敏感な用途が多いからじゃないのかと思うけど。
716 名前:デフォルトの名無しさん mailto:sage [2017/03/25(土) 03:50:37.57 ID:BrrX4e7P.net] Tokio-minihttp is number 4 in TechEmpower Round 14 Preview : rust https://redd.it/615sjf
717 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 16:59:39.44 ID:mKbsz9A+.net] // 例1 if let Some(ref mut x) = self.x { // ... if x.is_hoge() { self.x = None; // borrowck激おこ } foo } else { // ... bar } // 例2 let ret; if let Some(ref mut x) = self.x { // ... ret = foo; if ! x.is_hoge() { return ret; } } else { // ... return bar; } self.x = None; // おこらない ret
718 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 17:03:13.41 ID:mKbsz9A+.net] >>705 ミス // 例1 if let Some(ref mut x) = self.x { // ... if x.is_hoge() { self.x = None; // borrowck激おこ } foo } else { // ... bar } // 例2 let ret; if let Some(ref mut x) = self.x { // ... ret = foo; if ! x.is_hoge() { return ret; } } else { // ... return bar; } self.x = None; // おこらない ret
719 名前:デフォルトの名無しさん [2017/03/30(木) 18:52:42.70 ID:mCoqxFE9.net] え?それが何だというの?
720 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 19:02:31.30 ID:VKjElo3D.net] ボローチェッカーのせいで読みづらいコードを書かされるって話じゃね? てかこんな風に書けるのか。今までunwrapで無理矢理対応してたわ
721 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 19:45:59.94 ID:Gp+R1RG2.net] >>708 borrowckなしの状態よりむしろ危険になってて悲しい
722 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 21:09:15.78 ID:JBiI28RD.net] C++だとprivateにしてアクセサ付けろって言われるのに rustだと必要なときだけ、って感じなのってなぜ?
723 名前:デフォルトの名無しさん [2017/03/30(木) 22:29:46.32 ID:s+CP+YQd.net] >>710 C++でも言われないよそんな事
724 名前:デフォルトの名無しさん mailto:sage [2017/03/30(木) 23:51:37.90 ID:UVGuKdEr.net] >>710 大昔:public/privateの概念なく、どこからでも何でもアクセスあり 一昔前:public/privateで公開域を超強力に限定(極端に縛る文化 最近:public/privateはそこそこにね(極端に走りすぎてやりすぎたと反省 どの言語も最近は必ずしもpublic/privateなどの公開域を指定する修飾詞をつけないといけないって感じではなくなってるよ 怠慢 => 厳格 => 適度 って時代の流れよな >>712 がそういう時代の流れが知らないのか、あえて無視してるのか知らんけど
727 名前:デフォルトの名無しさん mailto:sage [2017/03/31(金) 08:03:04.47 ID:kyVktr8w.net] www.textdrop.net/google-styleguide-ja/cppguide.xml?showone=%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E5%88%B6%E5%BE%A1#%E3%82%A2%E3%82%AF%E3%82%BB%E3%82%B9%E5%88%B6%E5%BE%A1 https://google.github.io/styleguide/cppguide.html#Access_Control これとかは一昔前ということ?
728 名前:デフォルトの名無しさん mailto:sage [2017/03/31(金) 08:31:32.16 ID:kyVktr8w.net] c++スレで聞けって感じだね ここの住民のように最近の言語しらんのだ。ありがとう
729 名前:デフォルトの名無しさん mailto:sage [2017/03/31(金) 09:35:15.35 ID:CFLp8HcF.net] >>710 rustのラッパー系が持ってるget_ref/get_mut/into_innerはアクセサとは目的が違うよ。 それと、他言語のprivateなフィールドはrustだとinterior mutabilityになるけどこれは必要だから。 >>713 >大昔:public/privateの概念なく、どこからでも何でもアクセスあり 俗にカプセル化の一言で説明される全ての隠蔽は60年代〜70年代からあるよ。 >>714 C++はストラウストラップのオブジェクト指向の聖遺物。rustは宗教(パラダイムと設計思想)が違うし、 「ストラウストラップのクラス嫌やねん」が今の主流派だからそれに属するrustを見てC++の流儀が古いかどうかは言えない。 たとえば、最近のJVM言語がフィールド定義すればアクセサ自動定義するのは「メソッド記法面倒くさい」と 「C++系の流儀のjavaとシームレスに通信するため」の二点を同時に満たせるからであって、 こういうJVM言語はイマドキな考え方とC++系の昔からある考え方を両方備えてるからまだ古くなってない。
730 名前:デフォルトの名無しさん mailto:sage [2017/03/31(金) 12:21:13.04 ID:8wrz3vyb.net] >>714 言語自体はもう新興言語というほど新しくもないC++やJavaは修飾詞つけるのが正義なんじゃない それ自体は別に文句ないし、自分もそれらの言語を使う時は率先して付けてる rust, go, swift, nim, kotlinみたいな最近隆盛してる言語は付けないのが文化だと思う デフォルトのアクセス権限がprivateだったりするヤツもいるから複合的な理由だけど
731 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 09:03:12.10 ID:xsH2QUDo.net] コンパイル通すのに必死で、最適化まで考える余裕がない
732 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 11:27:53.05 ID:xsH2QUDo.net] xml parseしたいけどserde使えばよい?
733 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 11:37:09.88 ID:yqxqzJbW.net] serdeってDOMじゃなかったっけ DOMでいいならserde一択だとは思うけど
734 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 13:13:16.49 ID:dZXDeDc3.net] serde_xmlってあまり活発に開発されてる感じはしないよなあ。いまだにserde 0.8に依存してるし まあ、DOMツリーを得たりstructに読み込んだりするにはserde_xml、ストリームを扱うのならxml-rsってところじゃないかねえ
735 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 13:25:53.82 ID:ShBKdKpe.net] domでおけ <
736 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 14:14:43.48 ID:yqxqzJbW.net] Issues読んでたら、serde 0.9はこっちで対応してるからいいんじゃねって雰囲気でワロス ttps://github.com/RReverser/serde-xml-rs
737 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 20:06:49.50 ID:xsH2QUDo.net] やっぱ現代的言語としては標準ライブラリが弱すぎじゃない? C++よかましだろうけど
738 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 20:35:17.04 ID:/2Cak4ys.net] 探せばあるけど野良クレート頼りな感ある C++よかましだけど
739 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 21:26:19.10 ID:xsH2QUDo.net] 雰囲気的にnodeとかに近い感じかなぁ
740 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 22:33:38.44 ID:cPS3ohZQ.net] 標準ライブラリは最大公約数的な最小限のパーツに押さえるというポリシーだしcrates.ioの使用が前提になってる
741 名前:デフォルトの名無しさん mailto:sage [2017/04/01(土) 22:45:09.77 ID:dZXDeDc3.net] 0.x時代はnumもrandもlogもstdの一部だったしね。こっちの方が破壊的変更がしやすいとかなんとか 今のstdですら、@alexcrichtonがio::Cursorの実装を後悔していたりするし(↓) https://github.com/carllerche/bytes/issues/75#issuecomment-287145718
742 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 00:14:26.80 ID:4ErkdvW9.net] >>724 弱すぎるけど既存の標準ライブラリの設計も実装も結構ひどいところがある。 だけど、rustはcoreライブラリ書くのに向いてるから結局必要なら自分で実装しちゃう。 ネイティブスレッド一々作らせずにthread poolくらい標準で用意しろと思うけど。 >>727 ,728 cargoで一番センス悪いのがcrates.io前提とalexcrichtonだと思う。
743 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 00:47:10.72 ID:YQEfEn7s.net] Alex Crichtonになんの恨みがあるんだwww
744 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 08:00:17.30 ID:GW9gqzFE.net] no_stdをデフォルトにしようという極右派もにいてそうw 標準を強化しろってのも、標準は要らないってのも宗教だから無宗教の日本人らしく遠目に眺めてる
745 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 10:12:44.61 ID:PP0pKPr+.net] >>730 TOKIOの名を騙った恨み
746 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 10:23:41.85 ID:wHW/bvWX.net] > cargoで一番センス悪いのがcrates.io前提 自前のcrate作る時は名前の競合とか考えるの面倒だから [dependencies] hoge = { git = "https://github.com/hoge/hage.git" } で済ましてるわ 今時、crates.io前提だけで組み上げる輩もおるまい
747 名前:デフォルトの名無しさん mailto:sage [2017/04/02(日) 23:14:29.59 ID:SJJzQWRj.net] >>733 マルチプロジェクトで依存crateの数が多いとか、 他言語にも依存するとか、ローカルにしか無いcrateとオンライン上に あるcrateの両方に依存するとか、 他エコシステムとの協調苦手(他エコシステムと連携するadhocで泥臭いcrate書いて cargoでラップする構造にして隠蔽する必要がある)とかあるからそれだけじゃ上手くいかんよ。 実際にServoが色々壁にぶつかってissue投げまくってそっち優先で対処してるからServoはなんとか出来てる感じ。 言語は良いのに他がダメだから自分で対処できる人以外置いてきぼりで学習コスト高いと言われるんだと思う。 言語仕様もextnt,region,effect,zone(arena)とか一切説明なしに全部の文脈でlifetimeとかいう謎の語を使ってるしね。
748 名前:デフォルトの名無しさん mailto:sage [2017/04/03(月) 01:00:40.90 ID:JUppntkg.net] 他エコシステムとうまく連携できる言語見たことない
749 名前:デフォルトの名無しさん mailto:sage [2017/04/03(月) 01:23:46.19 ID:UPf59owC.net] 言語ごとのエコシステムなんて、OSのパッケージマネージャの邪魔しかしてねーだろ ユーザーから見たら迷惑千万
750 名前:デフォルトの名無しさん mailto:sage [2017/04/03(月) 05:55:
] [ここ壊れてます]
751 名前:44.20 ID:u5wlFHfm.net mailto: ディストリ毎に異なるパッケージマネージャーがあるのに無体なことを言うユーザ(笑)もいるもんだなw ユーザはビルド済みのバイナリだけ使えばいいじゃんね servoチームに魔改造受けたbindgenを使いこなせるようになりたい と思ったら最近upstreamがservoチームのものについに切り替わったのか これは大手ふって使わねば [] [ここ壊れてます]
752 名前:デフォルトの名無しさん mailto:sage [2017/04/03(月) 10:11:16.31 ID:8UfIZmop.net] >>735 build.rsに他エコシステムと連携するプラグイン書けるrustはマシな方よな Javaのgradleも頑張ってる方だけど言語公式じゃないし、gradleの本質はJavaじゃなくgroovyだし
753 名前:デフォルトの名無しさん mailto:sage [2017/04/06(木) 22:50:56.99 ID:optS43ym.net] Libs teamが何かissueを投げまくってる https://github.com/search?q=%22Library+evaluation+tracking+issue%22&type=Issues
754 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 11:31:26.42 ID:mTwYWLsL.net] Rustはライブラリ戦略で失敗、2.0を迎えずにUbuntuのUnityと同じ運命を辿ると断言しよう。
755 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 11:40:03.17 ID:GbqpuLIm.net] そうですか
756 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 12:53:41.18 ID:R3xK1J5N.net] mozillaってのが心配すぎる
757 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 12:59:38.91 ID:8ssaps+e.net] クソモジラはブランドにならないと思ったら容赦なく捨てるからな。
758 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 13:40:25.63 ID:ZW/CIt37.net] FirefoxOSは命名の時点で失敗が見えていた かといってよりマシな名前も思いつかない
759 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 14:37:09.60 ID:59elDVKi.net] GoogleだとMITやApacheに譲渡するし、Appleだと何事もなかったように切り捨てるけどな Mozilla Thunderbirdみたいに迷走した後にまた統合するんじゃないのw 個人的にはコミュニティベースのOSSで生き残ればどうでもいいわ Apacheは斜陽だからあそこへの譲渡はちょっとなぁと思う
760 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 14:42:54.10 ID:GbqpuLIm.net] クソ言語くん最近見かけなかったから心配してたけど、健在なようでなんか安心したわ
761 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 15:18:48.99 ID:59elDVKi.net] そうですか
762 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 16:24:57.82 ID:1hxGv39C.net] 低級言語として発展してくれる事を願う
763 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 16:35:35.04 ID:GbqpuLIm.net] WebAssembly向け言語としても推しているみたいだしその辺も期待できそう 既にCに慣れ親しんだシステムプログラマと比べて、Webのフロントエンジニアの方が訴求しやすそうだし
764 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 16:35:48.93 ID:Ay5kOBNO.net] ぶっちゃけシステムプログラミングでも組込でもなく wasm向け言語として定着しそうな感ある>Rust
765 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 17:04:37.50 ID:mTwYWLsL.net] Rust以外の"新興言語"でwasmをまともにサポートできてる言語ってあるの?
766 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 17:06:01.24 ID:mTwYWLsL.net] げ、ID被った アウアウカーなのかよお前!!!
767 名前:デフォルトの名無しさん mailto:sage [2017/04/08(土) 19:23:15.91 ID:R3xK1J5N.net] ここまで出来てればコミュニティーベースでもいけるのかなぁ。 お金ないとオープンソースなんて無力なイメージなんだが
768 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 00:35:44.07 ID:C+4/Iu4N.net] 趣味で使ってる人はRustで何作ってるの
769 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 01:13:01.86 ID:yAkJU/wS.net] >>754 トランプ52枚を4人に配るってのを作りたかった 乱数生成で挫折した
770 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 01:34:48.16 ID:+eXxcQKg.net] メルセンヌツイスタが有名
771 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 01:49:57.91 ID:+k4JWPSD.net] えっそっから作るの
772 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 09:24:07.59 ID:Q8Fz6A4a.net] >>754 某Web APIを叩いてる
773 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 09:43:37.83 ID:T4S+/aed.net] mscgenをrustで作り直し、、、たかった 画像扱うライブラリで良い感じのものがなくて停滞なう
774 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 18:08:30.92 ID:DtNkLoh6.net] 結局でかい口叩いといて誰もRustでまともなもの書けてねえんだろ? 欠陥言語であることの証明だな
775 名前:デフォルトの名無しさん mailto:sage [2017/04/09(日) 19:05:47.56 ID:4Oj8Cnsa.net] iOS, Androidの共通ライブラリに使ってるわ Cはイマイチだし、C++じゃ機能不十分で、他新興言語は動きます程度で使えん
776 名前:デフォルトの名無しさん mailto:sage [2017/04/10(月) 08:59:38.76 ID:GDyCY+n8.net] #[doc(hidden)]をprotectedの代用とする因習
777 名前:デフォルトの名無しさん mailto:sage [2017/04/10(月) 16:20:24.40 ID:RqOHyrbz.net] pub(restricted)で代用できないのか
778 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 02:06:18.61 ID:hFdmRMY+.net] Rustの萌えマスコットキャラはまだかい?
779 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 05:26:24.28 ID:YGNFjvB7.net] Ferrisがいるじゃない www.rustacean.net/assets/rustacean-orig-noshadow.png
780 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 18:18:05.18 ID:XPIrDgkS.net] カニなのには意味あるの?
781 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 18:21:50.61 ID:XPIrDgkS.net] crustacianか
782 名前:デフォルトの名無しさん mailto:sage [2017/04/11(火) 21:57:25.49 ID:yg0Uq9Gu.net] tree構造作るのがほんと厄介なんだけど、どうにかやりようあるの? https://github.com/SimonSapin/rust-forest https://github.com/saschagrunert/indextree
783 名前:デフォルトの名無しさん mailto:sage [2017/04/12(水) 06:31:23.82 ID:zsOpQD26.net] 厄介なりにできてるんならやりようは存在してるんでないの 個人的にはDOM(Tree Object)は所有権を複数者に要求するRustに合わない構造だと思ってるから使わないけど
784 名前:デフォルトの名無しさん mailto:sage [2017/04/12(水) 16:58:14.00 ID:JkQ01euR.net] 物理的にツリーなものでもデータ構造はツリーにしなきゃいいのかなぁ
785 名前:デフォルトの名無しさん mailto:sage [2017/04/12(水) 20:11:46.82 ID:UgFGccH2.net] Servoの中の人みたいにDOMでないと色々困るならDOMを作るけど、JSON, XMLをパースして操作するだけならツリーは辛い ツリー操作に適した他言語を使う方が幸せじゃないかな、DOM操作は苦行だけど他のメリットを鑑みてRustを使うのも良いよね
786 名前:デフォルトの名無しさん mailto:sage [2017/04/13(木) 13:41:01.33 ID:eTJjP5LI.net] 先生、rustが使いたいです、、
787 名前:デフォルトの名無しさん [2017/04/13(木) 23:00:29.13 ID:DmaD3ZLh.net] >>768 ツリーさわるのに直接、arenaとancestor意識しないといけないのか。 まあ、俺もこんなんだけど。 最近、tracing gc使ったら簡単なんじゃないかと思ってる。 stntax treeみたいに事前に全部の構造わからないとrustはつらいね。
788 名前:デフォルトの名無しさん mailto:sage [2017/04/14(金) 18:06:23.00 ID:4vbREvue.net] 一応日本のコミュニティーらしきものあるんだね
789 名前:デフォルトの名無しさん mailto:sage [2017/04/14(金) 23:18:47.00 ID:l3/xlJJH.net] 英語話せない原人特有文化
790 名前:デフォルトの名無しさん mailto:sage [2017/04/15(土) 11:23:25.59 ID:7FkW2H/i.net] あなたも原人なんでしょ?
791 名前:デフォルトの名無しさん mailto:sage [2017/04/17(月) 10:19:07.90 ID:Vk3u//l+.net] Rustなんてクソステマ言語使ってる時点でみんな等しく原人だから安心しろ
792 名前:デフォルトの名無しさん mailto:sage [2017/04/17(月) 12:47:03.78 ID:2mekMRo4.net] >>777 それはおかしい。 >>775 や>>776 は英語を話せない人という文脈で原人という語を用いている。 したがって、rust使用者であることと原人であることの間に関連はない。
793 名前:デフォルトの名無しさん mailto:sage [2017/04/17(月) 13:27:03.58 ID:Vk3u//l+.net] 俺から見ればクソステマ言語Rust使ってる時点で原人なの。 原人同士が英語喋れるかどうかで原人認定(原人視点)してるのが滑稽なの。 おーけー?
794 名前:デフォルトの名無しさん mailto:sage [2017/04/17(月) 13:45:45.69 ID:kHe1qBP+.net] 完全に基地外でワロタ
795 名前:デフォルトの名無しさん mailto:sage [2017/04/17(月) 14:00:48.95 ID:NJsGU
] [ここ壊れてます]
796 名前:HFQ.net mailto: まあ>>775 の"原人"の定義を採用しないとするのなら論理的に妥当っちゃ妥当 [] [ここ壊れてます]
797 名前:デフォルトの名無しさん [2017/04/17(月) 21:43:12.25 ID:5RBrgFiu.net] 昔pc原人てゲームあったよな?
798 名前:デフォルトの名無しさん mailto:sage [2017/04/18(火) 14:25:16.72 ID:avtppHhA.net] RLS now available on nightly www.jonathanturner.org/2017/04/rls-now-in-nightly.md.html
799 名前:デフォルトの名無しさん mailto:sage [2017/04/18(火) 23:28:49.61 ID:isZ+RH85.net] リリースニュースをコピペする奴がずっといるけど、それをどうしたいのか・・・ わざわざ過疎スレに貼らなくても、知りたい奴は普通に一次情報を追ってると思うよ
800 名前:デフォルトの名無しさん mailto:sage [2017/04/19(水) 06:39:40.15 ID:iVXI/rsk.net] >>784 お前のコメントよりは役に立つ
801 名前:デフォルトの名無しさん mailto:sage [2017/04/19(水) 17:45:36.14 ID:T5JpYnfb.net] 一次情報追ってるやつからすると単純にマルチポストなんだよな 使った感想があるわけでもなし、タイトルとURLじゃなんの役にも立たん
802 名前:デフォルトの名無しさん mailto:sage [2017/04/19(水) 18:55:17.11 ID:6t85zhKK.net] Twitterの@rustlangとか雑多な情報が多いから、めぼしい情報を並べてくれるだけども十分
803 名前:デフォルトの名無しさん mailto:sage [2017/04/19(水) 23:28:25.20 ID:QKWiY+xs.net] 1次情報追ってる奴よりそうじゃない奴の方が多いんだからいいんじゃね 何も書き込み無いスレだとユーザ居ない様に見えるし ここ2chだよ?
804 名前:デフォルトの名無しさん mailto:sage [2017/04/20(木) 00:46:43.55 ID:Vb04xDKl.net] ここtwitterじゃないよ?
805 名前:デフォルトの名無しさん mailto:sage [2017/04/20(木) 08:56:40.43 ID:Cjpsv+ZG.net] >>784 しね
806 名前:デフォルトの名無しさん mailto:sage [2017/04/20(木) 09:02:46.45 ID:5tsEknBd.net] >>782 高橋せんせい、20年遅れのステマですか?
807 名前:デフォルトの名無しさん mailto:sage [2017/04/20(木) 16:14:47.79 ID:zhxiAG0o.net] >>768-773 ツリーとグラフを作る記事があった。 グラフとアリーナ型メモリアロケータ hazama1616.blogspot.jp/2016/03/crust-11.html Rust でグラフ構造や木構造を作る agtn.hatenablog.com/entry/2017/01/16/151745
808 名前:デフォルトの名無しさん mailto:sage [2017/04/21(金) 08:10:49.54 ID:OiVWjQVQ.net] いつの間にかSerdeが1.0になっててビビる Lifetimeを用いたzero-copy deserializingとか胸が熱いな https://github.com/serde-rs/serde/releases/tag/v1.0.0
809 名前:デフォルトの名無しさん mailto:sage [2017/04/23(日) 17:11:05.67 ID:H4akHqoq.net] この言語, 普及すると思いますか? 自分は Scala と C++ やってたんですが、そういうバックグラウンドがない人がすぐ理解できるとは思えないのですが。
810 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 00:17:32.58 ID:7O6+7hGx.net] >>792 arena使うとarena解放するまでnode残るから無駄にメモリ使うのよ。
811 名前:デフォルトの名無しさん [2017/04/24(月) 00:32:48.88 ID:6h5JoTUe.net] >>794 キラーアプリが出ればねぇ。 ちなみに俺は力不足・勉強不足でrustは使えない。 それこそ広まってからもっと真面目に勉強しようかなぁってところ。 でもほんと期待はしてる。
812 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 01:17:18.29 ID:iqgOzto7.net] Firefoxがキラーアプリなんじゃないの?
813 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 02:32:17.00 ID:Uhs7fpwP.net] ripgrepって高速grepがあるぞ なお、早い理由のrust正規表現の中の人はGoogle製C++ Libの模様 dockerがgoで出来てても別段当時流行なかったし、rust適所を求めたい所存
814 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 10:05:04.89 ID:Ce/YXV/H.net] grepがキラーアプリ…
815 名前:デフォルトの名無しさん [2017/04/24(月) 10:45:03.83 ID:wWNCwbd3.net] 必要なのはキラーアプリではなくキラーフレームワークでしょ、Rubyにお
816 名前:けるRuby on railsみたいな。例えば色んな意味で扱いやすく高パフォーマンスなRust製ゲームエンジンとか出たら流行るかも? [] [ここ壊れてます]
817 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 11:21:49.38 ID:jmbJ/xCv.net] Web関連ではDieselがなかなか良さげなんだけど、MVCのMだけ優秀でも仕方ないしなあ……
818 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 12:54:52.94 ID:7aHDyTtY.net] ブラウザはメモリバグらせるとすぐexploitされる魔境だからRustになったけど他にそんなところってないだろうし
819 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 13:51:36.49 ID:37xJWuQr.net] rustで速く書くのってむずいよね
820 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 14:41:05.37 ID:H47kwRKj.net] >>802 ブラウザに限らず不特定多数と通信するソフトウェアは攻撃される。 サーバソフトウェアやP2PソフトウェアもRustの安全性が役立つと思う。
821 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 14:44:54.65 ID:YsR3dDij.net] てとはいえ大抵は「GCで良くね?」ってなるしなあ…… ブラウザはまさにそのGCと相性の悪い分野だからRustになるわけだけど
822 名前:デフォルトの名無しさん [2017/04/24(月) 16:32:01.09 ID:tbvSkh68.net] 言語の特性は組み込みに最適ではあるんだけど、動きが鈍い業界だからねぇ IoT絡みでスタートアップ企業が開発言語として採用とかあればもしかしたら一部ではやるかも。
823 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 17:56:13.42 ID:RtQoS8U2.net] そういや、ライブラリとしてGCを提供する話はどうなったの?
824 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 18:20:04.27 ID:A5CADFQV.net] 機械学習で流行んないかな? と思ったら leaf はもう開発停止してた。残念…
825 名前:デフォルトの名無しさん mailto:sage [2017/04/24(月) 23:01:27.18 ID:Af0Uvivz.net] regionによるメモリ管理自体が「tracing gcと併用しましょう」で結論出てるけど、 real-time javaくらいでしか実用化されてない代物だから rust特有のメリットというと低レベルでも抽象度の高く書ける事と、 data raceをコンパイラが防いでくれることじゃない? ただ、interior mutabilityは自分で面倒見るのと、 実際にはsemaphoreとRWLockだけじゃ使い物にならなくて non-blockingやconcurent collectionやfuture・fork/join、 SIMDを利用しないといけないけどrustはライブラリ弱いのが弱点。 datetimeみたいな何やっても揉めるようなライブラリはいらないけど、 io streamやtext encode/decodeの様な汎用のもないから他人のgithubみてると再開発しまくってる。 こういう標準ライブラリにあるようなものすらなくていいとなるとやっぱり組み込みだよ。 bare metalやろうぜ!
826 名前:デフォルトの名無しさん mailto:sage [2017/04/25(火) 00:11:02.98 ID:Pw354+ah.net] >>754 ファミコンエミュ
827 名前:デフォルトの名無しさん mailto:sage [2017/04/25(火) 01:15:27.81 ID:82uAhcwa.net] >>801 Rocket良さそうじゃん まだまだ発展途上だけど
828 名前:デフォルトの名無しさん mailto:sage [2017/04/26(水) 05:04:32.67 ID:o3HY2tae.net] 何も作らず競技プログラミング
829 名前:デフォルトの名無しさん mailto:sage [2017/04/26(水) 07:52:50.89 ID:kOLZL9DX.net] ツリーで悩み続け、アリーナでツリーしてたけど、Rc<RefCell>にしたらかなり楽になった。(ボローチェッカー的に) でも下手したら実行時に死ぬなんて、全然安全な言語じゃなくなってるのつらい
830 名前:デフォルトの名無しさん mailto:sage [2017/04/26(水) 09:58:03.56 ID:vpLTFLqL.net] >>813 コンパイルは目的じゃなくて手段だぞ 取り違えないように注意だ
831 名前:デフォルトの名無しさん mailto:sage [2017/04/26(水) 14:03:28.41 ID:JVsqiSk/.net] 実行時に不具合起こすくらいならコンパイルで止められた方がマシ
832 名前:デフォルトの名無しさん mailto:sage [2017/04/27(木) 13:02:01.11 ID:UU6zBZQ+.net] Rust向きのデータ構造を学べそうな本
833 名前:が発売される。 ただしコードがSMLなのでSMLを読める必要がある。 純粋関数型データ構造 https://www.amazon.co.jp/dp/4048930567 "Purely Functional Data Structures" の邦訳『純粋関数型データ構造』が発売されます http://d.hatena.ne.jp/ku-ma-me/20170316/p1 関数型言語での最適を考える:純粋関数型データ構造、Chris Okasaki http://www.injpok.tokyo/4048930567-functional-data-structure [] [ここ壊れてます]
834 名前:デフォルトの名無しさん mailto:sage [2017/04/27(木) 14:46:59.61 ID:1aP1zib4.net] Rustで面倒なのは所有権が曖昧だったり循環参照の可能性があるようなデータ構造でしょう その本は、破壊的変更が無いorマイナーな関数型言語で効率の良いデータ構造をどう実現するかっていうのが主題のはず Rustは破壊的更新もできるしinterior mutabilityもCellやRefCellで実現できるし、逆にGCが無いから対象領域からずれてる 面白い本だけど、Rustに直接役立つかは微妙
835 名前:デフォルトの名無しさん mailto:sage [2017/04/27(木) 17:37:30.60ID:xrM2MxeD.net] なるほどー 気になってたけど買わんでいいかな
836 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 02:50:31.12ID:mEZ3JB/W.net] Announcing Rust 1.17 https://blog.rust-lang.org/2017/04/27/Rust-1.17.html
837 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 07:59:12.67ID:Z9SVt9YO.net] >>819 くじけないなww 邪魔だからそろそろコテハン名乗れよ
838 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 08:13:14.38ID:zzlMZhy4.net] ↑なんなのこの変な人?
839 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 09:13:20.43ID:HrVNNKWr.net] マルチポストがうざい
840 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 16:35:55.80ID:QjsjY1pw.net] わざわざ出張してくるアンチって必ずいるよね
841 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 18:50:38.30ID:VS+BUfpC.net] >>820 しね
842 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 19:44:43.43ID:wIDo3kGW.net] 何でお前らはわざわざ構ってちゃんに構っちゃうんだろうね
843 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 23:26:08.53ID:7tdFyaEw.net] Rustの作り手っつーかServoチームがどうやって木構造を実現してるか気になるな。 木が作れない言語とかCの置き換えになる訳がないから、どっかにカラクリがありそう。
844 名前:デフォルトの名無しさん [2017/04/28(金) 23:29:09.90ID:EB1hHvLp.net] pfdsはモナドとかそっちの話 ML系はtracing gc載ってるもんだと 考えていいからrustで苦労する部分は関係ない。
845 名前:デフォルトの名無しさん mailto:sage [2017/04/28(金) 23:54:26.38ID:7tdFyaEw.net] つーかRustの中の人が「Data Structure in Rust」みたいな記事書けば解決する気がした。
846 名前:デフォルトの名無しさん [2017/04/29(土) 01:08:36.27ID:JJtwNZEl.net] Haskellみたいなイミュータブルなツリーを作ればいいんじゃないの?
847 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 02:09:39.72ID:rB0Fvmgg.net] >>828 データ構造に関わるRust言語仕様については詳しい記事がある。 でも>>203 によるとRustのデータ構造は発展途上だから 「Data Structure in Rust」は記事よりWikiの方が良いと思う。 Interior mutability in Rust: what, why, how? https://ricardomartins.cc/2016/06/08/interior-mutability
848 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 06:52:18.73ID:gpBNKKlw.net] 話題ないからって荒れてないで誰か>>819 に構えよ ずっとコピペしてんだぞ...
849 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 06:54:38.46ID:itnDcJNc.net] 時報みたいなもんだと思ってるし、特に必要ないけど別段いらないと騒ぐほどのものでもないし
850 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 07:23:49.26ID:ml8UsgdM.net] SPAMとしても頻度的にたかが知れてるし
851 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 08:21:53.98ID:rB0Fvmgg.net] >>831 Rust blogは巡回してないから新バージョンを知らせてくれるのはありがたい。 でも新バージョンに関するコメントを読みたければredditも読もう。 Cargoの新機能をコントリビュートした人が来ている。 The Rust Programming Language https://www.reddit.com/r/rust/ Announcing Rust 1.17!! https://www.reddit.com/r/rust/comments/67x46l/announcing_rust_117/ Announcing Rust 1.17 https://www.reddit.com/r/programming/comments/67x48c/announcing_rust_117/
852 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 08:59:42.66ID:odlCpz4e.net] >>831 メンヘラ臭い拒否反応だな。
853 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 09:25:50.46ID:4GuMMMYu.net] "foo" + "bar" はOKな糖衣構文にしちゃえばいいのに
854 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 14:34:05.02ID:TTyY7fIa.net] 時報とは言い得て妙だな。6週間のリリースサイクルだし。
855 名前:デフォルトの名無しさん [2017/04/29(土) 16:57:12.44ID:S/2IADGO.net] >>836 それは意見がわかれるところじゃね? 暗黙の型変換は、知っている人には便利だけど、知らない人には解析困難な不具合の元になるじゃん?
856 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 16:59:38.96ID:G5FLqmyn.net] 型変換じゃなくて、リテラルに限ってはconcat!で置き換えるという意味じゃない? どちらにせよ混乱の元には違いないが
857 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 17:20:18.00ID:wKCke3eM.net] >>838 Scalaとかまさにその辺(implicit)で死に体だな。 rustもderefで似たようなことになるけど。
858 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 17:51:01.81ID:KCJQ+KNC.net] 前はderef先のメソッドがドキュメントになかったから結構阿鼻叫喚だった Vecのiterってどこに定義されているのか分からなくて悩んだ記憶がある
859 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 22:41:34.26ID:XAi4G4Te.net] rustdoc使いもんにならんから。だいぶマシになったけど。
860 名前:デフォルトの名無しさん mailto:sage [2017/04/29(土) 22:48:33.12ID:kikbE+mq.net] ドキュメントに嘘書いてる言語って早晩滅びる印象があるから 言語に機能足すより重要だと思うんでなんとかして欲しいところではある。
861 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 14:13:59.03ID:dMKT6vJn.net] 今のCargoの仕様だと、serdeとserde_deriveに依存する"serde" featureを作る、みたいなことが出来なくてクソ Issue rust-lang/cargo#1286は放置されているし
862 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 15:06:58.47ID:zu6P/YtU.net] 自分でPR作っていいのよ?
863 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 15:10:11.47ID:dMKT6vJn.net] Pre-RFCレベルで議論が止まってるのにPRを出しても、ほら、アレじゃん?
864 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 15:25:28.02ID:yC307k3w.net] Rustという存在がそもそもクソなのにたかが1feature取り上げてクソっていうの滑稽だと思いません?
865 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 15:30:18.21ID:dMKT6vJn.net] げ、召喚しちゃった
866 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 15:36:13.13ID:yC307k3w.net] >>848 あんたも本当はRustなんて使い物にならないって分かってるんだろ?
867 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 16:10:58.91ID:zu6P/YtU.net] 議論進んでないけどissueではalexもいいじゃんって言ってるし、コードPR出したら話進むんでね 実装難易度を計ってないから実装大変なら議論をせっつくしかないけども
868 名前:デフォルトの名無しさん mailto:sage [2017/04/30(日) 21:51:06.29ID:cg8WUYRD.net] 2017年のロードマップ見る感じ、 今はどっちかっていうと敷居下げるための開発がメインになってて、 細かい融通の効かないところを直す作業に回してるリソースは少なそうな印象。
869 名前:デフォルトの名無しさん mailto:sage [2017/05/01(月) 11:29:01.79ID:hzoMRY/L.net] 裾野広げようとしたり敷居下げたりするとろくなことにならない
870 名前:デフォルトの名無しさん mailto:sage [2017/05/01(月) 13:37:42.52ID:DeKBxqzS.net] 一昔前は閉鎖的、独善的にOSS作って製大
871 名前:にやらかしたPJが多かったし、裾野を広げてくれた方が良いよ GNU周りなんて焼け野原ってレベルじゃねーぞ [] [ここ壊れてます]
872 名前:デフォルトの名無しさん mailto:sage [2017/05/01(月) 14:12:45.45ID:KtAp36Sz.net] Guileはmakeやgdbに組み込まれたしRは大成功じゃん__
873 名前:デフォルトの名無しさん mailto:sage [2017/05/01(月) 14:53:36.49ID:Hs34Q6fD.net] 裾野広げると大火傷するのはその通りだが、敷居下げるのは必要じゃないのか?元が高すぎるって意味で。 そのためのLanguage Server Protocolだったり、コンパイルメッセージの改善だったりだと思ってるが。
874 名前:デフォルトの名無しさん [2017/05/01(月) 23:46:06.84ID:ZiZ/DZmA.net] rustcのエラーメッセージは親切すぎてjsonフォーマットで取得したときの短い説明くらいでもいいと思う。 javacの仕様に忠実で簡潔なメッセージみたいなのが仕様覚えた時最強よ
875 名前:デフォルトの名無しさん [2017/05/02(火) 00:05:58.80ID:Wqf9gHHS.net] プログラミング業務に従事する人の全てがプログラミング得意ではないってことだから最大の安全策(ヘボが1人でもいたら死ぬので)
876 名前:デフォルトの名無しさん mailto:sage [2017/05/02(火) 01:06:19.38ID:C2K+k/F2.net] 今のメッセージはだらだらと出力垂れ流し過ぎで 注目してほしい所がどこか分かりづらいから コード書けない人は元から解読不能じゃないの?
877 名前:デフォルトの名無しさん mailto:sage [2017/05/02(火) 06:32:24.31ID:hjAzwlgs.net] rustc --verbose-error みたいなオプション付与するFR出そう(迷走感
878 名前:デフォルトの名無しさん mailto:sage [2017/05/02(火) 18:52:28.66ID:ul1GfwIs.net] error:の行だけgrepすれば
879 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 18:44:17.67ID:joqUnMHM.net] リリースノートにある Stabilized APIs ってどういう意味?安定化? API仕様は固定化されて、今後変更ありませんってこと? それとも実装が改善されて、より安定しましたよってこと?
880 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 18:47:35.13ID:joqUnMHM.net] あ、失礼 どうも単に「そのバージョンから追加されましたよ」って感じぽいね
881 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 19:08:10.33ID:SEHmhXUn.net] nightlyで実装しててstableに入った感じ? 破壊更新ないとは言え、変わる/代替するAPIはあるんだろうねぇ
882 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 19:44:38.59ID:joqUnMHM.net] > nightlyで実装しててstableに入った感じ? [This is a nightly-only experimental API.]からのパターンもあるのかな? [Unstable]が外れたとき Stabilized API ではあるみたい 例: 1.14から[Unstable]として存在してて 1.16からStabilized APIとされたstr::repeat https://doc.rust-lang.org/1.14.0/std/primitive.str.html#method.repeat fn repeat(&self, n: usize) -> String Unstable (repeat_str #37079) Create a String by repeating a string n times. ↓ https://doc.rust-lang.org/std/primitive.str.html#method.repeat fn repeat(&self, n: usize) -> String 1.16.0 Create a String by repeating a string n times.
883 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 22:57:01.88ID:K7D8UWDQ.net] unstableだとAPIが変更される可能性があって、nightlyのrustcで明示的にfeature宣言しないと使えない、つまり、unstableなの覚悟して使うことしかできない stableになるとnightly以外でも何もしなくても使える、かつ、rust 1.xの間は互換性が保たれることが保証されてる
884 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 22:58:45.11ID:K7D8UWDQ.net] 新しいAPIはunstableで入れていろいろな使い方を試し すことでAPIの問題を洗い出す 問題がなさそうならstableにする、と言う流れでAPIは追加されていく
885 名前:デフォルトの名無しさん mailto:sage [2017/05/03(水) 23:39:38.56ID:pt3eTQQ5.net] 変更されうるのだとしたらもはや"stable"じゃないわな
886 名前:デフォルトの名無しさん [2017/05/03(水) 23:53:59.46ID:+mfvcDBb.net] >>862 > 「そのバージョンから追加されましたよ」 追加されるタイミングはnightlyだからそれはない。 unstable feature-gateいらなくなったって意味だと思う。 [] [ここ壊れてます]
888 名前:デフォルトの名無しさん mailto:sage [2017/05/04(木) 06:16:36.53ID:RKPYINUc.net] 破壊的変更に興奮するのはD言語erだけだしな。
889 名前:デフォルトの名無しさん mailto:sage [2017/05/04(木) 15:59:11.46ID:pmL645Ea.net] 言語仕様を破壊的に変更します
890 名前:デフォルトの名無しさん mailto:sage [2017/05/05(金) 20:57:36.19ID:evgWhU4H.net] OpenGLまわり調べたんだけど、gliumという有力なやつが死んでて悲惨な感じ。
891 名前:デフォルトの名無しさん mailto:sage [2017/05/05(金) 23:50:31.44ID:YwW9QOYO.net] お前らもちゃんと回答しとけよな Launching the 2017 State of Rust Survey - The Rust Programming Language Blog https://blog.rust-lang.org/2017/05/03/survey.html
892 名前:デフォルトの名無しさん mailto:sage [2017/05/06(土) 00:09:45.35ID:ia8ugx7T.net] >>871 古い。glとglutin使え
893 名前:デフォルトの名無しさん [2017/05/06(土) 10:48:00.25ID:RxOQwEqu.net] >>865-866 などと油断しているとマナーの悪いライブラリが現れて既成事実化パンチを食らわす
894 名前:デフォルトの名無しさん mailto:sage [2017/05/06(土) 10:56:40.09ID:KOSYyPxU.net] >>873 glutinも同じ作者だからしんでんじゃないの?
895 名前:デフォルトの名無しさん [2017/05/06(土) 20:14:14.95ID:2tqhhaHc.net] [u8](ただの数値の配列)とバイナリデータ(画像とか動画とか)で別の処理をしたいのですが、バイナリ型みたいなものってないのでしょうか?
896 名前:デフォルトの名無しさん mailto:sage [2017/05/06(土) 22:37:18.12ID:MU54dFC0.net] >>876 rustは直接Read実装する設計だからStreamの概念そのものがないからない。 当然、その設計ではダメだからそこら辺やってるのはあちこちで車輪量産の重複祭りの無駄まみれ。
897 名前:デフォルトの名無しさん mailto:sage [2017/05/06(土) 23:44:29.00ID:btijA/Fa.net] これひとつとってもいかにRustが使えないかわかってくれるかな
898 名前:876 [2017/05/07(日) 00:00:41.87ID:8fnm7svP.net] >>877 えぇ…ないんですか…
899 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 00:53:05.68ID:/2PQHse0.net] [u8]とバイナリって何が違うの?(無知)
900 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 01:39:18.20ID:Qw7Hyr2c.net] >>876 struct Binary(Vec<u8>) みたいに強いtypedefするのが良いと思う
901 名前:876 [2017/05/07(日) 01:39:29.33ID:8fnm7svP.net] MessagePackみたいなやつを作ろうと思っているのですが、例えばMessagePackの場合こんなふうになると思うのですが [1u8].to_msgpack() -> 0x91|0xcc|0x01 binary.to_msgpack() -> 0xc4|0xcc|0x01 こんな感じで出力するデータ(型情報の部分)を変えたいんです。 [u8]をラップする型を作るしかないのでしょうか?
902 名前:876 [2017/05/07(日) 01:43:28.96ID:8fnm7svP.net] >>881 やっぱりそうなってしまいますか… 標準ライブラリとかで代わりになる型とかがあれば良かったのですが…
903 名前:876 [2017/05/07(日) 01:46:59.72ID:8fnm7svP.net] あ、>>882 の0xc4|0xcc|0x01は0xc4|0x0f|0xcc|0x01の間違いです
904 名前:876 [2017/05/07(日) 01:48:17.83ID:8fnm7svP.net] また間違えた… 0xc4|0x01|0xcc|0x01です…
905 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 02:03:35.41ID:/2PQHse0.net] >>881 の言う通り、newtype patternの典型的な適用対象だな
906 名前:876 [2017/05/07(日) 02:55:21.52ID:8fnm7svP.net] >>881 の方法でやってみます!皆さんありがとうございました!
907 名前:876 [2017/05/07(日) 03:06:56.11ID:8fnm7svP.net] 何度もすみません、struct Binary(Vec<u8>)をVec<u8>に戻すにはどうやればよいのでしょうか?
908 名前:876 [2017/05/07(日) 03:14:36.88ID:8fnm7svP.net] std::mem::transmuteを使ったら変換できたのですが、unsafeを使わずに変換できる別の方法はあるのでしょうか?
909 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 03:22:21.66ID:/2PQHse0.net] l
910 名前:et bin = Binary(vec); から戻すには、 let Binary(vec) = bin; または let vec = bin.0; 後者のletはなくても良い https://doc.rust-lang.org/book/structs.html#tuple-structs [] [ここ壊れてます]
911 名前:876 [2017/05/07(日) 03:52:33.92ID:8fnm7svP.net] >>890 ありがとうございます!タプルだったのですね!
912 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 11:17:30.56ID:VPDa5WUk.net] https://blog.rust-lang.org/2017/05/05/libz-blitz.html 「電池同梱はめんどくさいから代わりにAPIガイドライン作るぜ!お前らの書いたもの公式に認めて欲しいならこの通りに書けよ!」だってよ。 ほんとモジカスは傲慢の極みだな
913 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 11:22:13.82ID:14wasV+G.net] 普通だろ。
914 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 11:34:54.97ID:VPDa5WUk.net] >>893 え、どこが? 最近の言語では当たり前になった電池同梱放り投げて自分でライブラリ書かず、 あまつさえ人に丸投げしておいて、その人の書いたものに文句つけるって最高に傲慢だろ。 Google(Go)だってそこまで傲慢なことしてねえよ。 そんで成果はSerdeみたく背乗りするんだろ? ただのショバ代やみかじめ料で懐肥やすヤクザじゃねえか。
915 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 11:45:28.65ID:VPDa5WUk.net] あーでもこれ元々のモジカスの商売のやり方だし、いつも通りっていえばいつも通りか。
916 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 12:04:33.68ID:ddnrmDhK.net] Google社員はお帰りください
917 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 12:29:03.87ID:0mnoYXCa.net] 電池てなに
918 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 12:39:58.75ID:/2PQHse0.net] Serdeといえば、dtolnayがlibs teamに入るってよ https://internals.rust-lang.org/t/announcement-david-tolnay-joining-the-libs-team/5186 以前からlibs teamっぽいことしてるなとは思っていたが。これとか https://github.com/rust-lang-nursery/lazy-static.rs/issues/70
919 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 13:41:03.47ID:yFu/STaX.net] 人様の言語にただ乗りしてる奴がなんか言ってら
920 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 13:41:52.62ID:Ca8+Q/ub.net] >>897 Rustを持て囃してるバカって電池同梱すらしらないで言語語ってんのか
921 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 13:47:52.30ID:zdh+Rbcj.net] え、Rustって電池同梱じゃないの?ゴミじゃん
922 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 14:04:46.63ID:T2T4uK8j.net] まさかRustがLLだとでも言うつもりか?
923 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 14:10:00.16ID:0LwsXYr3.net] Goはコンパイル言語だけど電池同梱に近いよね。
924 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 14:31:33.96ID:sD8ZUjOP.net] (電池ください)
925 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 14:38:38.33ID:4a4zif1L.net] >>904 Rust team「自分で作れ」
926 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 15:35:02.86ID:VGI2seLS.net] 最近はなんでも充電池内蔵が主流になったから、買ってきたはいいけど乾電池切らしてて今すぐ使いたいのに使えねえええええええ、っていうアレは今どきの若者には例え話として通じにくいのかもしれない
927 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 15:42:01.72ID:f0nSghKy.net] それが語源なのか 古いな
928 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 16:13:07.60ID:sZJnoCfs.net] 「電池付属してなかったから星1つ」なんてレビューはAmazonでたまに見る。
929 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 17:26:47.52ID:4ZC1qsBr.net] 今時電池ついて言語使うのなんて言語マニアか通常では考えられない程の最適化が必要かつ、自分で出来る人だけ 本当にCの
930 名前:代替なんだな [] [ここ壊れてます]
931 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 19:00:23.38ID:6aDVTTpe.net] >>892 つーかこのリンク先読んだら「電池同梱はめんどくさいから代わりにAPIガイドライン作るぜ!」なんて言ってない件。 - 使いやすい&見つけやすいライブラリは必要だが、それを標準ライブラリにしてしまうと言語が硬直化するよ(Scalaが昔はバージョンが上がるたびに標準ライブラリの破壊的変更でコードが壊れるとか言われてたなそういえば) - なのでRustチーム内でライブラリチーム立ち上げて、それ系のライブラリをcargoのcrateとして提供するプロジェクトやるよ(crateなら言語のバージョンとライブラリのバージョンを独立に運用できる) - 同時にAPIのガイドライン作って、標準crate内のライブラリとサードパーティのライブラリの使い勝手を揃えられるようにするよ - crate cookbookとしてユースケースに対応したドキュメントまとめるよ 「電池同梱はめんどくさいから」なんてどこにも書いてないんですけど?それどころかめっちゃ至れり尽くせりなんですけど?
932 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 19:30:33.62ID:/vTxYTBW.net] 意外と大事な話だと思うんだよなこれって 素晴らしい言語だと書きやすくて保守もしやすいやろ? プログラマの負担が下がってるはずやろ? 標準ライブラリなんてその気になれば どんどん充実させるくらいわけないはずやろ?
933 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 19:31:06.86ID:OLmdvIig.net] cargoって、依存ライブラリ(の依存ライブラリ)のバージョン指定が衝突したときはどうなるの?
934 名前:デフォルトの名無しさん mailto:sage [2017/05/07(日) 22:54:21.84ID:n+lNXLOL.net] >>912 同一のバイナリに別々のバージョンが混在することになる ただしCargo.tomlで同一のlinksキーを持つパッケージ同士は混在させられないという制約があるから、foobar-sysみたいなcrateは別バージョンを混在させることができない また同一crateの別々のバージョンの型同士の互換性はない(例えばserde 0.9でDeserializeをimplしてもserde 1.0からdeserializeできない)
935 名前:デフォルトの名無しさん mailto:sage [2017/05/08(月) 00:17:48.86ID:j5FwBoSL.net] >>913 へー、参考になるわ。ありがとう。 C用のリンカが絡んで来ない限りは混在できるって理解でいいのかな? staticな変数を書き換えてると想定外なことが起きそう
936 名前:デフォルトの名無しさん mailto:sage [2017/05/09(火) 01:43:09.71ID:jo26XFAE.net] ラスト製看板ソフト is 何?
937 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 10:56:13.54ID:0hFJ5UkD.net] >>915 Servo Dropboxの内側 この二年間判子でも押してんのかってくらい これしか出てきてないやで。
938 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 11:13:52.88ID:mMhExRU7.net] まじかよripgrepアンインストールするわ
939 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 11:15:57.02ID:0QYEWDu4.net] rustが出たのってもっと前だろ... 1.0から始めたにわか知識でモノを言うのはどうかと
940 名前:デフォルトの名無しさん [2017/05/10(水) 12:47:54.37ID:nbHcOJ7d.net] >>917 それって中身c++?
941 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 14:46:02.55ID:5JQ8qpGt.net] >>918 それ1系になってからまともなキラーアプリ出てないことの擁護になってねえぞ。 0系から脈々と続いてるキラーアプリって例えば何だよ
942 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 17:37:23.36ID:rVDKC26c.net] ripgrepの速さの秘密はrust部分に無いって、誰か書いてなかったっけ?
943 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 19:19:59.40ID:XATnWRVq.net] ripgrepの基盤であるregex crateはRE2から一部設計を借りているが実装そのものはpure Rust そしてそのRE2との比較ベンチマークでは概ね優位な結果を出している https://github.com/rust-lang/regex/blob/master/bench/log/05/re2-vs-rust まあこれだって、速さの秘密は設計であってRustではないと言えなくもないが、それを言い始めたらどんなものだってそうなるわけで……
944 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 20:29:48.23ID:qFSf2ut1.net] ripgrepまじはやいな
945 名前:デフォルトの名無しさん mailto:sage [2017/05/10(水) 22:15:45.77ID:vC5mCQJ8.net] とはいえ導入の手間考えたらag使うわけでな?
946 名前:デフォルトの名無しさん mailto:sage [2017/05/11(木) 00:31:42.38ID:1trPjqZb.net] 配布してるバイナリ使えばよいのでは
947 名前:デフォルトの名無しさん [2017/05/12(金) 22:13:56.60ID:/qNs0s39.net] ビルドが成功せず困っています。 トレイトをVecに入れることはできないのでしょうか? よろしくお願い致します。 https://play.rust-lang.org/?gist=71800494b0fd1c3e6e01319033d02ccb&version=stable&backtrace=0
948 名前:デフォルトの名無しさん mailto:sage [2017/05/12(金) 22:24:41.25ID:ePjXpOIy.net] >>926 ほい https://play.rust-lang.org/?gist=9322e2e43abda0ffdf9c3622b0458295 TRPLのtrait boundのあたりを再読することを勧める https://doc.rust-lang.org/book/traits.html
949 名前:926 [2017/05/12(金) 22:41:29.54ID:/qNs0s39.net] >>927 ありがとうございます! できるんですね!安心しました! もう一度読み直してみます!
950 名前:デフォルトの名無しさん mailto:sage [2017/05/13(土) 08:06:40.42ID:xsq9/VMj.net] >>927 3.19. Traits https://doc.rust-lang.org/book/traits.html 4.19. トレイト https://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/traits.html 章番号が違うと思ったら翻訳の方は1章がIntroductionだった。
951 名前:デフォルトの名無しさん [2017/05/14(日) 08:52:33.34ID:fadi1QDK.net] impl From<_> for XXXを実装した型をimpl From<ここ>に入れたいのですが、どのようにやれば実現できるのでしょうか? 昨日の夜からずっとやっているのですが解決方法が見つからずにいます。 よろしくお願い致します。 https://play.rust-lang.org/?gist=a375fc6be8b1fe372b37b2c6016a8f21&version=stable&backtrace=0
952 名前:930 [2017/05/14(日) 12:26:08.29ID:fadi1QDK.net] よく考えてみたら>>930 でFromを実装しているのはXXXなんだからFrom<ここ>にいれることはできないですよね…
953 名前:デフォルトの名無しさん mailto:sage [2017/05/14(日) 13:36:42.22ID:pJQIemEX.net] >>930 やりたいのはこんなこと? https://play.rust-lang.org/?gist=409ea391ea26bedd99815cfd5321f329
954 名前:デフォルトの名無しさん [2017/05/14(日) 13:37:18.02ID:Md4a44U8.net] >>931 fromの中身をJSON::Array(v)にすれば???=JSONで通るよ 俺も初心者だからよく分かんないけど enumをコピーしたいんだったら#[derive(Clone)]を使えばいいのかな?
955 名前:デフォルトの名無しさん mailto:sage [2017/05/14(日) 14:39:39.74ID:zrHRjUcE.net] >>932 T: Cloneは不要 https://play.rust-lang.org/?gist=653a0583d14c167d30db66a8e4c2fb6f どうせならFromIterator<T>も実装しておくべきかかもな
956 名前:930 [2017/05/14(日) 14:42:29.11ID:fadi1QDK.net] >>932 ありがとうございます!これです!これがやりたかったんです! 多分できないんだろうなと思って完全に諦めていました! ありがとうございます!
957 名前:930 [2017/05/14(日) 14:45:46.69ID:fadi1QDK.net] >>934 Clone無しにできるんですね!ありがとうございます!勉強になります!
958 名前:デフォルトの名無しさん mailto:sage [2017/05/14(日) 14:46:26.59ID:ZMLrc75/.net] てかserde_jsonで良くね?
959 名前:930 [2017/05/14(日) 15:05:42.81ID:fadi1QDK.net] >>937 新しいシリアライズフォーマットを作っていたのですがどう実装していいかわからないところがあり、質問する際に回答しやすいかなと思ってJSONにして質問してみました! serde_jsonは型情報が事前にわかってないとシリアライズ/デシリアライズできないと思い込んでいましたがそんなことないんですね!serde_jsonのソース見てみます!
960 名前:デフォルトの名無しさん mailto:sage [2017/05/17(水) 19:26:14.20ID:Tf+uq8In.net] cargo-cake - Cargo: packages for Rust https://crates.io/crates/cargo-cake >A cake for celebrating Rust's birthday
961 名前:デフォルトの名無しさん mailto:sage [2017/05/17(水) 21:11:51.51ID:bY/Wnlnx.net] そろそろRustの誕生日なんだっけ?
962 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 09:57:29.68ID:pE9H07RL.net] >>939 一番好きなOSSライセンスで配布されてて、入れねばと思った次第 このライセンス、もっと流行ってほしい
963 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 10:06:00.24ID:f88CfZw6.net] こんなライセンスあるんだ GPL股間でケツみたいなロゴ
964 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 19:45:14.25ID:1qJaUFOe.net] WTFって what the fuck かよって笑ったらホントにそうだった。
965 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 19:52:14.49ID:KhU24P3y.net] NYSL(煮るなり焼くなり好きにしろライセンス)てのもあったなー
966 名前:デフォルトの名無しさん [2017/05/18(木) 19:53:40.57ID:/+P5IoOC.net] 夏かC
967 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 20:36:37.70ID:38KyjAHn.net] crate見てると、MITとApache-2.0のデュアルライセンスが多いね なんか理由あるのかな? 単に他の人がそうしてるから? ほかの言語のライブラリと比べると、BSDライセンスやGPLがもっと多くても良さそうな気がするんだけど
968 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 20:53:08.58ID:fOFaQvk5.net] BSDって厳密には「BSD風」でないと権利元が違う所に行くんじゃないのけ 最新のBSDライセンスは変わってるのかもしれんけど BSD風 = MIT な条項になるはずだからBSD風にするならMITで済ます方が楽だと思う APLは広告表示を伝播させるウィルスライセンスだからGPL並みに嫌いだ... だから、BSD風やMIT、しいては好き勝手を許すWTFPLを愛してる
969 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 21:56:20.62ID:kFoUD79v.net] さすがにBSDっていったらnew BSDだよw いつの時代からきたの
970 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 22:08:12.07ID:H9PBwwNn.net] rustのオフィシャルcrateがMIT/Apache2.0にre-licenseしたときに core teamの人がいろんなcrateにrelicenseしないかとissueたててたからきっとその影響
971 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 22:09:14.25ID:ohXqIolz.net] これだな https://github.com/sfackler/rust-openssl/issues/331#issue-125839119
972 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 22:17:01.68ID:38KyjAHn.net] へー、ただの偶然や、なんとなくじゃないんだな
973 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 22:32:31.37ID:38KyjAHn.net] もっと読んだら、こういう事か Rustの主要ライセンスはApacheライセンスだけど、GPLv2互換にする為におまけとしてMITライセンスも付けてる だからRustエコシステムの一環として、このcrateもデュアルライセンスにしてね 俺の中では、Apacheライセンスの方がマイナー感あるけど、こっちがメインらしい
974 名前:デフォルトの名無しさん mailto:sage [2017/05/18(木) 22:43:24.79ID:fOFaQvk5.net] >>948 new BSDという存在がなかった時代から来たよw 今はそんなライセンスになってんのな、流石に「BSD風」の面倒さはいつまでも保たなかったか Apacheがまだ元気だった頃、Apache製のJava LibがAndroidなんかで大量に使われて一気に流行ったよな > APL GPLv2だと商用で使えないけどBSD風/MITだと売名できないからって00年代にはよく使ってたわ
975 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 09:05:07.26ID:r5Vu9+iD.net] Apacheはpull reqの著作権が譲渡されるのが便利だから使われてる
976 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 12:16:11.47ID:Cc5/b8RU.net] Apacheの方が企業で使いやすいと聞いたことある 広告表示の伝播って何?
977 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 14:23:28.33ID:7dSH5YZb.net] GPLと違ってソースコード開示義務がないから、クローズドソース企業でもAPLソースを利用できる MITと違って権利元の紹介/参照表示義務があるから、APLソースを作った企業は広告塔として利用できる 利用側、提供側の両方の企業にとってWin-Winだねぇ PRの著作権が譲渡されるのが便利ってのは意味わからんけど PR受領側がAPLにしてても意味ないし、PR発行側がAPLにしたら権利譲渡されないでしょ
978 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 16:01:37.09ID:YSFiOlnd.net] https://www.viva64.com/en/b/0324/ 古い記事だが俺がずっとRustはクソ言語未満って言ってるのは正しかったと確信できた。 ここにいるクソモジラの工作員は百万回読んで反省しろ。
979 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 16:17:53.03ID:00885lZ8.net] 工作員とか言い出す辺り電波ちゃんか。
980 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 16:19:17.30ID:YSFiOlnd.net] >>958 クソ言語を流行ってるように見せかけて害悪を撒き散らしてるのが工作員じゃなくて何なんだ? 実際に雇われてなくても工作員には変わらない。
981 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 17:19:26.35ID:uFlt+gQT.net] >>957 確信出来たけどまたここに来ちゃうんでしょ〜?
982 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 17:37:02.20ID:YSFiOlnd.net] >>960 うっかりステマに騙されてこのスレに来た奴に本当の情報を教えて救う仕事があるからな。
983 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 20:18:17.49ID:ICcQ+KKA.net] >>957 半分くらいで読む気なくしたけど序盤からグリーンスレッド云々とか言ってて「は?」って感じだし 途中でD言語の衰退とかに触れてるのはあまり関係ない話だし、 引き合いに出されてるベンチマークの結果は最新版では順調にC/C++に近づいてて色々笑える
984 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 21:05:47.66ID:rqeuDXpP.net] 二年も前の記事なんて引用するもんじゃないなww
985 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 22:56:06.99ID:myVq12PI.net] >グリーンスレッド云々 C++の後継狙ってないなら絶対切ってない機能だから、これ切った時点でC++の置き換え狙ってないとか口が割けても言えないよな??? でこの体たらくかwwwwwww ってことな。 >D言語の衰退 かつてCやC++の後継を狙った言語がことごとく結局技術的負債になってるが、Rustがそうならない理由どこにもないけどそれでも使うの??? ってことな。 >引き合いに出されてるベンチマークの結果 ソースなし擁護乙。
986 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 22:58:39.55ID:ICcQ+KKA.net] >>964 箱ひげ図くらい読めるよな? benchmarksgame.alioth.debian.org/u64q/which-programs-are-fastest.html
987 名前:デフォルトの名無しさん mailto:sage [2017/05/19(金) 23:42:10.72ID:R52jpALp.net] >>957 Vec<Rc<RefCell<Box<Trait>>>> に爆笑したわ 別名つけるなり構造体に押し込むなり色々やりかたがあるって自分の示したソース(しかもRedditて)で書かれてるし そんなんC++でもやるだろ つか個人的にはC++のテンプレートの方が記述ひどいわ あと記事の最後の 「C++erは(中略)必要とあればRustを習得するのはすぐできるが、逆はほとんどありそうもない」 っていうのは全力でダウトぶつけたいわ。簡単なのは闇の軍団くらいだろ 逆に言えば「闇の軍団くらいになればRustなんていらない」っていうことなのかもしれんが
988 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 00:27:26.97ID:Ff6K3/VM.net] >>965 Cの箱が潰れてただの線になってるのほんと笑う C++にはかなり追いついている(というか中央値はほぼ同率か)が、Cだけは越えがたき壁だな
989 名前:デフォルトの名無しさん [2017/05/20(土) 01:16:59.18ID:FvSbl/DO.net] >>964 「ない」ばっかり、君日常会話も否定から入るタイプ?
990 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 07:19:30.94ID:ByT4iV18.net] >>964 グリーンスレッドにあたるものってC++にはないよ。だからよりC++に近付いたんだよ。 もっとRustとプログラミング言語勉強しないとくそ言語かどうか判らないね〜。 またRust勉強したら帰ってきてね
991 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 10:08:32.95ID:POYpVYoy.net] goスレの俺のレスを工作員だと思って来たんだろうから、あっちでrustをディスっておいた 「ずっとRustはクソ言語未満って言ってる」のに確信持ってなかったとか驚いたゾ 根拠なくクソ言語未満って言ってたとかお前は原人かよぉ
992 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 17:57:16.26ID:QYvr2rA8.net] >>969 そもそもの>>957 の文が「グリーンスレッドを切ったんならC++の置き換えを狙ってるってことだよな?」という内容だからその点に限っては>>964 は間違っていない
993 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 18:18:03.04ID:FvSbl/DO.net] そもそもグリーンスレッドなんていらん
994 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 19:47:44.68ID:FUP6GO5Q.net] グリーンスレッドのいる理由もいらん理由もわからなくて辛い
995 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 20:02:52.38ID:yXBDkmxu.net] グリーンスレッドある=へーrustやるじゃん ない=まぁ無くても…別にねぇ?
996 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 20:31:44.28ID:HYrvvmg5.net] そりゃ要らんだろ。 擬似スレッドなんて。
997 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 21:08:20.63ID:NqXZxUdZ.net] > グリーンスレッドある=へーrustやるじゃん この頃はどういう背景だったんだろうねぇ、goroutineを真似てみたかった感じなのかね 同じものを実現することは不可能なわけで、それでグリーンスレッドイラネになったのなら必然だわな
998 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 21:29:09.33ID:1hsFVVTl.net] グリーンスレッドがあればGoと勝負する位置の言語としての存在価値ができた。 グリーンスレッドを捨てた結果、愚かにもC++に弓引くドンキホーテになった。
999 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 23:31:32.24ID:FvSbl/DO.net] どんどんcpuコアが増えていくのにグリーンスレッドとか、、、
1000 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 23:38:34.66ID:QYvr2rA8.net] よく分からんのだけど、グリーンスレッドが解決しようとしている問題ってコア数を増やせば解決できるような問題なの?
1001 名前:デフォルトの名無しさん mailto:sage [2017/05/20(土) 23:57:14.86ID:FvSbl/DO.net] >>979 あーそんなことは言ってない。cpuを有効活用してかないといけないのに今更グリーンスレッド持ち上げてもアレだよと。
1002 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 01:41:54.52ID:DDrTaXD8.net] if let Some(a) = x && let Some(b) = yみたいに書きたい
1003 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 04:11:14.25ID:cLRuMlqp.net] if let (Some(a), Some(b)) = (x, y)
1004 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 06:52:28.40ID:9L9dm7b/.net] >>977 このドンキホーテも真っ青な的外れな指摘よ グリーンスレッド載せてもGo(goroutine)との勝負の土俵に上がれないってばよ >>982 ぱっと見、()が多くてタイプ面倒そうでもっとシンプルにならんかなと思ったけど letや&&なんかを何度もタイプするより短いんだな
1005 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 11:03:41.44ID:HTknFc4w.net] システムプログラミング言語としてネイティブスレッドのサポートは必須なんだけど 標準ライブラリのIO系関数をネイティブスレッド、グリーンスレッドのどちらでも使えるようにすると ネイティブスレッドで使ったときのオーバーヘッドが大きすぎると問題になった グリーンスレッドとネイティブスレッドにそれぞれ別のIO関数用意するのだったら 標準ライブラリでやらなくても良いよねということになって グリーンスレッドサポートはドロップされた
1006 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 11:21:50.34ID:rlx7fyr1.net] https://crates.io/crates/trip trip finds 2channel-style tripcodes 2ch用ツールがcrates.ioに上がってるね。
1007 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 12:22:45.36ID:HwsOwdy1.net] Rustには可愛いマスコットキャラいないの?
1008 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 12:47:53.53ID:cLRuMlqp.net] >>985 もうメンテナンスされてないっぽいけどこっちの方が多機能そう https://github.com/Huton/tripcode-rs
1009 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 12:50:18.66ID:cLRuMlqp.net] ……と思ったけどよく見たら>>985 は探索ツールか
1010 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 12:51:09.59ID:hU2RwKDa.net] >>986 おれもユニティーちゃんみたいなのほしいんだが
1011 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 12:51:29.25ID:hU2RwKDa.net] カニの擬人化
1012 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 13:07:17.24ID:rlx7fyr1.net] >>986 カニのフレンズがいるって、このスレで見た
1013 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 13:09:35.76ID:cLRuMlqp.net] Ferris the Crabは今のままでも十分可愛いよ
1014 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 13:30:02.02ID:hU2RwKDa.net] フェリスたんがかわいく見えないのはまだラスタシアンになりきれてないからなのか
1015 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 13:32:15.48ID:HwsOwdy1.net] いるのかと思ったらそのカニ非公式じゃねーか
1016 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 13:47:49.18ID:rlx7fyr1.net] borrow checkerのマスコット blog-imgs-10.fc2.com/k/a/n/kaniking/shanghaigani070107.jpg
1017 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 14:04:48.14ID:9L9dm7b/.net] 次スレ ttps://echo.2ch.net/test/read.cgi/tech/1495343069/l50
1018 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 14:08:51.46ID:hU2RwKDa.net] 誰か絵心あるやついないのか
1019 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 15:13:30.59ID:2E7Z41P0.net] へ____ミ へ..........ミ へ____ミ
1020 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 15:13:59.69ID:2E7Z41P0.net] 失敗
1021 名前:デフォルトの名無しさん mailto:sage [2017/05/21(日) 15:14:22.40ID:2E7Z41P0.net] 穴があったら埋めたい
1022 名前:1001 [Over 1000Thread.net] このスレッドは1000を超えました。 もう書けないので、新しいスレッドを立ててくださいです。。。 life time: 200日 12時間 1分 43秒
1023 名前:1002 [Over 1000Thread.net] 2ちゃんねるの運営はプレミアム会員の皆さまに支えられています。 運営にご協力お願いいたします。 ─────────────────── 《プレミアム会員の主な特典》 ★ 2ちゃんねる専用ブラウザからの広告除去 ★ 2ちゃんねるの過去ログを取得 ★ 書き込み規制の緩和 ─────────────────── 会員登録には個人情報は一切必要ありません。 月300円から匿名でご購入いただけます。 ▼ プレミアム会員登録はこちら ▼ https://premium.2ch.net/ ▼ 浪人ログインはこちら ▼ https://login.2ch.net/login.php
1024 名前:過去ログ ★ [[過去ログ]] ■ このスレッドは過去ログ倉庫に格納されています