プログラミング言語 Rust 4
: デフォルトの名無しさん [] 2017/10/14(土) 17:38:14.04:uWD69LeP Mozilla発のプログラミング言語「Rust」のスレです 公式 ttps://www.rust-lang.org/ ttps://blog.rust-lang.org/ ttps://github.com/rust-lang/rust 前スレ プログラミング言語 Rust 3 ttps://mevius.5ch.net/test/read.cgi/tech/1495343069/ : デフォルトの名無しさん [sage] 2017/10/14(土) 17:50:32.20:TG6KQnkb 乙py : デフォルトの名無しさん [sage] 2017/10/14(土) 19:21:55.29:exUih+Y4 rustって難しいの? 使いにくい言語って結局クソじゃね? 有難がってるのって信者だけ? : デフォルトの名無しさん [sage] 2017/10/14(土) 20:28:14.94:5CxcJldf 簡単だからみんなに愛されてるよ : デフォルトの名無しさん [sage] 2017/10/14(土) 20:49:22.17:d/ZcF8z5 低能には無理なだけ。 : デフォルトの名無しさん [sage] 2017/10/14(土) 21:21:44.96:MEMAbYNQ 乙rs : デフォルトの名無しさん [] 2017/10/15(日) 02:22:15.99:Gzamsjai 厳しい先生だと思う。 でもそれは俺らのためでもあって、rust先生の審査を通ったプログラムは安全と言える。 ただ先生も普段が厳しすぎるとは思ってるので、わかってる奴ら用にunsafeって抜け道も用意してくれてる、、、 そんな感じ。 : デフォルトの名無しさん [sage] 2017/10/15(日) 17:08:59.82:OLs+Obq4 そう。信者と本山(モジラ)だけ 試しにAPIサーバでも書いてみりゃ即この言語使えねえってわかるぞ : デフォルトの名無しさん [sage] 2017/10/15(日) 17:11:39.41:OLs+Obq4 あと何度もいうけど「Rustのコンパイル通らないプログラムは危険」とかいうデマゴーグが嫌い きちんと状態管理すりゃいくらでも正しく動くのに やれstatic領域は排他制御しろだのやれこの変数はスコープ明示的に切れだのいらんことばっかいうのがRustコンパイラな : デフォルトの名無しさん [sage] 2017/10/15(日) 17:45:57.69:rS8Rkw3L 書きやすさは一旦置いといたとしても 保守のしやすさってどうなんだろうか この言語は、保守しやすいコードへ導く言語なんだろうか : デフォルトの名無しさん [sage] 2017/10/15(日) 17:55:29.27:OLs+Obq4 一度書いたものを書き換える度にコンパイラが奇声をあげるので変更もままならないという意味では保守性()は高いかもな メンテナンス性がまったくないともいう : デフォルトの名無しさん [sage] 2017/10/15(日) 18:15:28.06:rS8Rkw3L メンテナンス性はまったくない、でFA? 言語とのしてのメンテナンス性の傾向ってのは さほど語られてるのを目にしないけど個人的には Java 10年後数万行のコード見てもわりと整然としてる あとから何度も手を入れて運用していける Ruby 最初書きやすい、表現力が高い?と感じながらスイスイ書いていける 半年後、雑然としていてまったく読めない クソみたいなコード書いた自分が悪いとはいえ ↑こういう感想を抱いている : デフォルトの名無しさん [sage] 2017/10/15(日) 18:56:05.11:OLs+Obq4 そもそもRustはプログラミング言語として破綻してるので、 モジラ信者でもない限り使わん触らんが一番幸せだ 悪いことは言わんからRustのことは忘れろ : デフォルトの名無しさん [sage] 2017/10/15(日) 19:40:50.30:tVDbMyAt ほんと定期的に沸くなこのアンチ メンテナンス性でいうなら、最初に型さえうまく設計してれば結構拡張性あるから、 その辺はどっちかというとHaskellに近いかな クセはあるけど型をきちんと理解して最初の設計に組み込んでおけばかなり自由が効く 最初の型合わせゲームは辛いけどな : デフォルトの名無しさん [sage] 2017/10/15(日) 21:01:33.85:hXoFufWE ID:OLs+Obq4 くらいの基地外になれば100年だって粘着する。 : デフォルトの名無しさん [sage] 2017/10/16(月) 00:56:00.52:L0xOtnmA firefoxをRustで書けるわけないと言ってたのがMozilla以外使わないに後退したのか : デフォルトの名無しさん [] 2017/10/16(月) 01:34:41.28:fJuedXc2 <br> そりゃまぁ、事実としてmozillaがRustでfirefoxを書いちゃったからな firefox Quantum beta 試してみたけど確かにchrome並みに速くなったな そしてchromeよりメモリは食わないのが良い でも正直、俺はメモリ不足を感じたことがないからChromeベースのVivaldiを使い続けるが 無事にfirefoxも出たことだしRustもう少し普及してくれないかなぁ : デフォルトの名無しさん [sage] 2017/10/16(月) 06:58:12.63:tAuyK94w quantam はcssしかrustになってないからまだ速くなるらしいぞ : デフォルトの名無しさん [] 2017/10/17(火) 15:47:54.26:wIRdElZt ブラウザのレンダリング速度ってcssをどれくらい速く捌けるかが大部分なんじゃないの? それ以外がRustになったところで速くなるといっても微々たるものなのでは... Servoって確かJSエンジンは従来のSpiderMonkeyをそのまま使ってるんだよね JSはGCあるし、DOM管理(Rust側のDOMオブジェクトとの連携)とかどうやってるのかよく分からんけど DOM管理の部分とかがRustになったらさらに速くなるのかな? 今のQuantumってGecko全体の何%くらいがRustになってるんだろう? : デフォルトの名無しさん [sage] 2017/10/17(火) 18:19:17.27:+iMUpGrE firefoxはまだまだchromeに負けてる ttps://www.phoronix.com/scan.php?page=article&item=firefox-quantum-bench&num=1 rustの力ではよどうにしかして😣 : デフォルトの名無しさん [sage] 2017/10/19(木) 23:42:22.47:IsyCcSeh というか Servo はいつになったらまともに動くようになるんだろう。 精力的に開発が行われているのに、数クリックでフリーズする状況が年単位で続いているのが謎すぎる。 : デフォルトの名無しさん [sage] 2017/10/20(金) 00:07:38.98:wgfDnpHi 数クリックでフリーズってどういう事? 普通に動くぞ : デフォルトの名無しさん [sage] 2017/10/20(金) 00:17:55.96:rZiWAdIU 定期的にバイナリ落としてきて Windows/Linux で試しているけれど、リンクを数回辿る くらいの操作で入力を受けつけなくなる。 Windows と Linux は物理的にも違うマシン だし、おま環じゃないと思うんだけどなあ。 : デフォルトの名無しさん [] 2017/10/20(金) 02:33:32.00:Ka6W9rl7 下のサイトでnightlyビルドで公開されてるやつ試したが日本語サイトは全滅だった。 英語サイトならWikipedia, Github, Rustの公式サイトあたりは見れたぞ。 Amazon, youtube, google mapは動かなかったが。。。 ちなWin10ね ttps://servo.org : デフォルトの名無しさん [sage] 2017/10/21(土) 15:27:07.62:QcSDmzOK 起動直後にそれらのサイトにアクセスすると普通に動くけれど、 そのままリンクを辿ったりするとフリーズしない? こちらもそこで落とした Nightly on Win10. : デフォルトの名無しさん [sage] 2017/10/21(土) 15:39:44.95:01QdRZD5 rocketというwebフレームワーク気になる そもそもrustってwebサーバーに向いてる?🤔 : デフォルトの名無しさん [sage] 2017/10/21(土) 16:07:39.00:guA6ZzKE rocketワイも気になるンゴ : デフォルトの名無しさん [sage] 2017/10/21(土) 18:49:44.39:JlJoedU7 trait Foo: Sized { const BAR: Self; const BAZ: Self = Self::BAR; } beta や nightly では通るのに、stable ではエラー出して通らないのな。 : デフォルトの名無しさん [sage] 2017/10/21(土) 22:00:10.66:guA6ZzKE あ : デフォルトの名無しさん [] 2017/10/21(土) 22:37:04.09:WA0WypxL あ、アは、日本語の音節の1つであり、仮名の1つである。1モーラを形成する。 五十音図において第1行第1段(あ行あ段)に位置する。 by wikipedia ttps://ja.wikipedia.org/wiki/ あ : デフォルトの名無しさん [sage] 2017/10/22(日) 05:54:14.55:bmxwOMJ1 向いてはないな web系は処理速度や信頼性、保守性よりも生産性が重要視される。 生産性ではRustはphpやruby on rails には劣る。 かといって向かないとも思わない。 現にRustのweb系のフレームワークは複数存在してるし、 どれも今のところ結構精力的に開発、更新されてる。 Rustはc++と比べて抽象化と並行性という意味では優れているから、 特にRocketは他言語のwebフレームワークにも負けないレベルの短いコード量で Webサーバー作れる(あくまで個人的な感想。異論は認める)し、 将来的には並行性を活かしてパフォーマンスも改善されると思われる。 Rustが好きなら十分アリだと思う。 逆に目的のWebサーバーさえ作れれば言語なんかどれでも良い って感じならRustはないな。 Rustは慣れるのにとにかく時間がかかるけど、慣れちゃえば それほど生産性の低い言語だとは思わないし(高いとも思わないが)。。。 結局は学習コストがRustの一番の問題なんだよなぁ。。。 思ったより長文になった。すまぬ : 名無しさん@そうだ選挙に行こう! Go to vote! [sage] 2017/10/22(日) 09:29:16.36:sz06mai3 web系で一括りは雑でしよ シングルスレッドでうぇいうぇいやってるアプリ層と下位の屋台骨支えてるところでは世界が違う シンプルにまずはc++の代替を狙う言語でいい 仕事で使うレベルを考えるとc++の教育コストにうんざりしてるからrustには期待してる : 名無しさん@そうだ選挙に行こう! Go to vote! [sage] 2017/10/22(日) 11:20:50.04:WwgEyxCZ そーいえばいつの間にかrustfmtのフォーマットが変わって くそめんどいことになってるけど、 どうしてこうなったの : デフォルトの名無しさん [] 2017/10/25(水) 21:48:06.68:RVSof4zp C/C++を覚えなきゃだめです Rustを使うにしろGo言語を使うにしろです何の新しい言語を使うにしてもです 世のライブラリの大半はC/C++用に作られているわけです Rustでラップされたライブラリ、代替できるRustで書かれたライブラリ、そんな便利なものがたくさんあればいいのですが : デフォルトの名無しさん [sage] 2017/10/26(木) 17:41:17.14:iL6gP4TT typedef struct Foo { int x; int * x_ref; } Foo; Foo foo; foo.x = 11; foo.x_ref = &foo.x; C で書くとこんな感じになる、自分の要素への参照を要素として持つ構造体って、Rust じゃもしかして書けない? 苦心してこんなん書いてもやっぱ無理だし。 use std::mem; struct Foo<'a> { x: i32, x_ref: &'a i32, } impl<'a> Foo<'a> { fn new() -> Self { let mut foo = Foo { x: 32, x_ref: unsafe { mem::uninitialized() }, }; foo.x_ref = &foo.x; foo } } : デフォルトの名無しさん [sage] 2017/10/26(木) 18:27:07.74:oDCnt1ox 参照として持たせる意味が分からない : デフォルトの名無しさん [sage] 2017/10/26(木) 18:39:59.49:iL6gP4TT カーソルに使うんだよ。 : デフォルトの名無しさん [sage] 2017/10/26(木) 23:52:30.58:ErMEtQpf 前もこのスレで同じようなこと聞いてダメだったはず 一つの構造体の中に、配列とその中のどれかを指す参照が入ってる構造 解決策は、参照をやめてインデックスを持つ : デフォルトの名無しさん [sage] 2017/10/28(土) 17:28:01.09:sEZMTm/T let mut foo = vec![false; 20]; // fooの2番目と3番目をtrueにするには foo[1] = true; foo[2] = true; // しかないでしょうか? : デフォルトの名無しさん [] 2017/10/28(土) 18:11:36.42:MtYOEUVQ 2番目と3番目以外がどうなってもいいなら let mut foo = vec![true; 20]; : デフォルトの名無しさん [sage] 2017/10/28(土) 18:33:36.35:sEZMTm/T すいません… 良くありません : デフォルトの名無しさん [sage] 2017/10/28(土) 19:14:18.79:R69/khYl 実際のところ生産性ってどうなん? GUIプログラムとかにも向いてる? いい感じのGUIフレームワークがあったとして。 : デフォルトの名無しさん [sage] 2017/10/28(土) 19:33:23.13:2Kf4Kqfh 何がしたいの? いろいろ出来るけど : デフォルトの名無しさん [sage] 2017/10/28(土) 19:58:15.36:sEZMTm/T pythonでいえば foo[1:2] = [True] * 2 みたいなことです (1..3).for_each(|x| foo[x] = true); といちいち書くのが面倒(な上処理が重そう)だったので伺いました 実装したいのはアトキンの篩です : デフォルトの名無しさん [sage] 2017/10/28(土) 20:29:56.20:2Kf4Kqfh 効率が悪いってのはindexアクセスを二回やるとこのこと? ここは過疎ってるからまじめに聞きたければSlack行くとよいよ : デフォルトの名無しさん [sage] 2017/10/28(土) 20:41:41.30:2kkil0pQ let mut foo = vec![false; 20]; println!("{:?}", foo); foo.get_mut(1..3).unwrap().iter_mut().for_each(|v| *v = true); println!("{:?}", foo); : デフォルトの名無しさん [sage] 2017/10/28(土) 20:43:42.54:2kkil0pQ コスト気にしてるみたいだけど、release でコンパイルすれば、結局 foo[1] = true; foo[2] = true; したのと変わらん結果になるんちゃうか? : デフォルトの名無しさん [sage] 2017/10/28(土) 21:55:42.13:sEZMTm/T ,47 そうなんでしょうか(LLVM IRも読めない) それで進めようと思います ありがとうございました アトキンの篩は他の言語だとどれもヒープ 確保してforループでヒープ操作という感じですが 横着して同じような実装をRustで書くとas usizeばっかだしで一目でダメとわかるコードに… : デフォルトの名無しさん [sage] 2017/10/29(日) 00:23:56.31:BVtm7xd8 Atkinの篩、実装を見てみたが(察し) ttps://phillip-h.github.io/reikna/docs/reikna/prime/fn.atkin.html ttps://github.com/FrogBomb/prime_sieve : デフォルトの名無しさん [sage] 2017/10/29(日) 09:47:38.74:femXOKq6 Kotlinのスコープ関数みたいなことができるcrateってありますか? : デフォルトの名無しさん [sage] 2017/10/29(日) 11:47:41.30:SkqxwfAQ 'a type と 'a + type の違いが分からん. : デフォルトの名無しさん [sage] 2017/10/29(日) 11:48:57.06:UFBW+HOq obj.method(args) って形はマクロを使っても崩せないんじゃないかなあ 動作的にwithみたいなのは一関数でできるんじゃない? 無理すればメソッドとして実装することもできるかと ttps://play.rust-lang.org/?gist=2133c56a393f15a3ff5d059016ed3b11&version=undefined 便利か?と言われたらそうでもないかも : デフォルトの名無しさん [sage] 2017/10/29(日) 11:50:41.46:UFBW+HOq 'a + typeじゃなくて'a + Traitじゃない? : デフォルトの名無しさん [sage] 2017/10/29(日) 12:23:33.14:femXOKq6 なるほど! 最近Kotlin書くことが多くてスコープ関数使ってみたら、いちいち変数に入れなくてよかったり(変数名を考えなくていい)レシーバを指定しなくてよかったりして楽に感じたので、Rustでも同じようなことできるcrate公開されてないかなと思っていたところです! : デフォルトの名無しさん [sage] 2017/10/29(日) 12:31:27.29:SkqxwfAQ おお、その通りだ。分かってなさすぎるな…。 fn hoge<'a, T: 'a + Trait>( x: &'a T ); &'a T が参照先オブジェクトの寿命を表しているのはいいとして、 'a + Trait の 'a の意味がよく分からない。 : デフォルトの名無しさん [sage] 2017/10/29(日) 17:07:16.08:UFBW+HOq 自分もよく分かってないし、見覚えの無い使われ方があったときにそれを指す言葉を知らなくて時間がかかるんだけど、 ttps://doc.rust-lang.org/book/second-edition/ch19-02-advanced-lifetimes.html ↑にあるように、<>の中ではlifetimeや総称型を使うよ、と宣言するのと、T: Traitとやって型の境界(bound)を指定するのの2つの意味があって、 T: 'a + Traitってのは型TがTraitをimplしていることと、もし参照型だったりlifetimeを持つ型だったりしたときは'aより長生きなものに限りますって意味になる、らしい 意味は分かる。けど、hoge(v)としたとき、lifetime関連のエラーを吐く具体的な値vの例が思いつかない : デフォルトの名無しさん [sage] 2017/10/29(日) 18:50:42.32:DMNR4JpH whereで書いたほうがわかりやすいね : デフォルトの名無しさん [sage] 2017/10/30(月) 21:06:32.26:4dqnj7Aj まず、そのままのコードでは new() の返り値が move されるときに &x のアドレスが変わってしまう(実際には最適化で move されない だろうけど言語仕様的には)ので、そのコードがエラーになるのは正当。 なので x か Foo 全体を box 化する必要がある。ただ box 化すれば コンパイルが通るかというと、 box を deref して得られる参照は box の中身の寿命ではなく box 自身の寿命になるので、 transmute で チートする必要がある。 fn new() -> Self { let mut foo = Box:new(Foo { x: 32, x_ref: unsafe { mem::uninitialized() }, }); foo.x_ref = unsafe{ mem::transmute::<_, &'static _>(&foo.x) }; foo } : デフォルトの名無しさん [sage] 2017/10/30(月) 21:26:14.87:4dqnj7Aj 失礼。コンパイル通らないコードを貼り付けてしまった。 fn new() -> Box<Self> { let mut foo = Box::new(Foo { x: 32, x_ref: unsafe { mem::uninitialized() }, }); foo.x_ref = unsafe { mem::transmute(&foo.x) }; foo } : デフォルトの名無しさん [sage] 2017/10/30(月) 22:54:07.55:nDqoZaw+ ありがとう。 move するとアドレスが変わるというのは無理矢理実験したときに気付いたけれど、 実際はこんな感じで Box 化された構造体の特定の変数への参照が欲しかったので、 が言った前スレの辺りを見て、こんな感じで解決してました。 use std::mem; struct Bar(i32); struct Foo { x: Box<Bar>, x_ref: &'static i32, } impl Foo { fn new() -> Self { let mut foo = Foo { x: Box::new(Bar(10)), x_ref: unsafe { mem::uninitialized() }, }; let dummy = mem::replace(&mut foo.x_ref, unsafe { mem::transmute(&foo.x.0) } ); mem::forget(dummy); foo } } : デフォルトの名無しさん [sage] 2017/10/31(火) 00:31:43.31:pbuN/n26 ああ、確かにリファレンスとはいえ forget() しとくべきだね。 このコードについては↓でも問題ないけど、まあ実際の初期化はもっと他にも 処理があるだろうから、一般にはこううまくは行かなかいか。 struct Foo<'a> { x: Box<Bar>, x_ref: &'a i32, } impl<'a> Foo<'a> { fn new() -> Self { let x = Box::new(Bar(10)); Foo { x_ref: unsafe { mem::transmute(&x.0) }, x: x, } } } : デフォルトの名無しさん [sage] 2017/10/31(火) 18:55:06.66:xO8W0Vv5 Rcって何のためにあるんですか? 所有権? 借用じゃダメなん? 所有権持ってる変数のライフタイムを超えて借用できないからRc? 色んなコンテナや、色んなデータ構造に渡って持たせたいときはRc? ttps://ideone.com/IP9Jk4 書いてみたらなんとなく納得行ったような気がする : デフォルトの名無しさん [sage] 2017/11/03(金) 08:56:29.78:Z6QhTX43 標準に整数型のトレイトがないの意味わかんねぇ std::net以上に需要あるでしょ : デフォルトの名無しさん [sage] 2017/11/03(金) 19:05:06.62:q9Q8QP2Y Scalaも無かった気がする : デフォルトの名無しさん [sage] 2017/11/04(土) 09:52:47.01:ZfOcIIq3 Haskellで言うNun型クラスみたいな奴ってことか? トレイトでやろうとすると要定義メソッド多すぎたり、 累乗みたいな計算の実装が遠回りになったりしそうできつそうに見えるな : デフォルトの名無しさん [] 2017/11/04(土) 10:16:41.16:sRI2IP6J Haskellは数値も抽象化してるせいでパフォーマンスにかなり影響与えてるしね… : デフォルトの名無しさん [sage] 2017/11/04(土) 11:00:10.28:ZfOcIIq3 s/Nun/Num/ Scalaはその辺を、暗黙の型変換でシームレスに扱おうとして闇を量産してるんだよな Rustは今んとこ特になんもしてない感じか : デフォルトの名無しさん [sage] 2017/11/04(土) 11:30:17.70:I+CIRt80 numクレートじゃいかんの? ttps://github.com/rust-num/num : デフォルトの名無しさん [sage] 2017/11/05(日) 10:17:10.41:/rlXjeS/ numクレートが標準にないのが嫌なんだろうけど、std::timeみたいに標準サポートやーめたってなりそう Into/From使えば別に困らんしと需要は少ないのではなかろうか : デフォルトの名無しさん [sage] 2017/11/07(火) 20:38:24.64:vWfvN4c5 ttps://ideone.com/XBh9VX ・AA treeを実装 ・1.8.0で主に確認(ideoneは1.14.0) ・Rc<RefCell<Option<Node<T>>>>を中心に実装 ・ふんだんにRc::clone()を乱発 ・Tも<T: Copy>でコピーしちゃう ・肝心の木の操作部分は、wikipediaでの表現に近くなるように表現 ・基本的によく分かってないので色々奇妙な事をしているかもしれない 昔からチラホラ「Rustで木構造は苦しい」と耳にしてて興味があったのと 最近ほかのスレで実装してた人がいたのをみて触発されたので書いた 最初はOption<Rc<Node<T>>>で書いてたけど RcとRefCellの組み合わせを試してみたくなって方向転換 けっきょくどっちが正解だったのかは不明 : デフォルトの名無しさん [sage] 2017/11/07(火) 20:46:48.79:pha33qDk ただのAA木に Rc なんて要らんだろ。Option<Box<Node<T>>> で済むだろ。 : デフォルトの名無しさん [sage] 2017/11/08(水) 00:56:51.98:hd1pqs3m AA木の削除操作はwikipediaのやつだとpred(自分より小さい値のうち一番大きいもの)とsucc(自分より大きい値のうち一番小さいもの)を 子ノードから取ってきた後に子ツリーに対して再帰的にdeleteをしてくってなってるけど、ノードの値がNoCopyだとRc使うかunsafe使うかしないと無駄なコピーが発生しない? : デフォルトの名無しさん [] 2017/11/08(水) 01:15:10.36:T1vINdZw 「他スレで実装してた人」って俺のことだな。 ↓のスレのことだろ? 次世代言語Part7[Go Rust Swift Kotlin TypeScript] ttps://mevius.5ch.net/test/read.cgi/tech/1508403098/ "> ttps://mevius.5ch.net/test/read.cgi/tech/1508403098/ 木構造は持ち主(親)が1つに限定されるはずのでRcもRefCellもいらないと思うよ。 実際 、自分はOption<Box<_>>という形で実装してるし。 RcとRefCellの練習するんならグラフ構造とかがいいじゃないかな。 グラフ構造ならRcとRefCellはほぼ必須になるんじゃないかな。 グラフ構造はRustどころかC, C++でも実装したことないから詳しくは分からんけども。 : 70 [sage] 2017/11/08(水) 20:27:30.89:iPjR8aCv ttp://https://ideone.com/4BnXSI "> ttps://ideone.com/4BnXSI ・AA treeを実装 ・1.8.0で主に確認(ideoneは1.14.0) ・今回はOption<Box<Node<T>>>中心に実装 ・Tも<T: Copy>でコピーしちゃう ・肝心の木の操作部分は、wikipediaでの表現に近くなるように表現 ・前の奴>>72 wikipedia見ただけでそのへんに着目できたのってすごい 前回は実はそこで一旦あきらめてコピーとOption<T>の導入に踏み切った 今回もTのコピーうんぬんについては挑戦せずそのまんまコピーしてる : デフォルトの名無しさん [sage] 2017/11/09(木) 01:32:36.02:kYfp6pnU Option::takeを使って子ノードのsuccかpredの値を取ってくるとすると、その子ノードの値はNothingになるよね? wikipediaの例だとその後にdeleteを再帰的に行うことで(delete内で適宜skew&splitを呼んでる)バランスを保つよう処理してるけど、Nothingが入ってる時点でうまく動く保証が無い そのスレで書いてくれたものは要素としてCopyであるi32を使ってるから問題が見えないんじゃないかと思う 自分もの例を見る前に多相型でちょっと書いてみて、どうすんだこれって気付いたんで偉そうなこと言えないっす Rust固有の問題じゃないような気がしてるよ。C++とかで多相型にしてみたとしても、「子ノードの値を自身の値にする」って部分でコピーが行われる気がしてならない 一瞬だけどAA木の中に同じ値を持つノードが発生しているから、AA木の実装を綺麗に書こうとしたらT:Copy or T:Cloneって制約は必須なんじゃないかと : デフォルトの名無しさん [] 2017/11/09(木) 03:38:46.05:x23Vytiv ああ、なるほどね。 確かにi32の部分をTに置き換えると T: Copy か T: Clone が必須になるね。 これは確かに無駄なコピーが発生してるわ。 まぁ、この実装だとおそらく元になったwikipediaのコードの時点で 無駄なコピーが発生してることになるよね。 wikipediaの場合はi32(4byte)くらいならコピーしてもいいやってスタンスなのかな? Tの場合は何byteになるか分からないからそういうわけにもいかないということかな? これ以上は考えるのが面倒になってしまった。。。orz : 70 [sage] 2017/11/09(木) 19:44:06.23:1u6Rcsa8 ttp://https://ideone.com/dFoFa9 "> ttps://ideone.com/dFoFa9 ・>>75 そこんとこの苦悩はもうしゃあないのかな それについてはもう思考停止します : 77 [sage] 2017/11/09(木) 19:45:08.89:1u6Rcsa8 ×・の<T: Copy>を<T: Clone>に変更 ○・の<T: Copy>を<T: Clone>に変更 : デフォルトの名無しさん [sage] 2017/11/09(木) 20:45:25.15:EdyTgEfO rustのことはわからんけどコピーしないAA木は実装したことがあるので口を出させろください 「succかpredの値をnodeにコピーしてからsuccかpredを削除」しているわけなので リンクを繋ぎ変えてsuccかpredとnodeをまるごと入れ替えるようにすれば、コピーは要らなくなりませんか : デフォルトの名無しさん [sage] 2017/11/09(木) 22:34:40.35:kYfp6pnU コピーしない実装も不可能じゃないと思うけど、削除時の再平衡をちゃんと理解してないから分からん ちょっと勉強してみるわ : デフォルトの名無しさん [sage] 2017/11/10(金) 00:49:41.25:PhyVaKjz データ構造,アルゴリズム,デザインパターン総合スレ 3c2ch.net ttps://mevius.5ch.net/test/read.cgi/tech/1466315249/l50 : デフォルトの名無しさん [sage] 2017/11/10(金) 23:43:40.77:3DZB3Erk num crateって昔標準じゃなかったっけ?rustc_privateだけだっけ? : デフォルトの名無しさん [sage] 2017/11/11(土) 03:49:20.94:x6IBdmnF Rustの日本語書籍ってまだ出てないのですか? : デフォルトの名無しさん [] 2017/11/11(土) 21:51:46.65:rbpvu0L2 ttps://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/ : デフォルトの名無しさん [sage] 2017/11/12(日) 00:57:30.78:pW30nUMy ありがとうございます : デフォルトの名無しさん [sage] 2017/11/13(月) 15:07:53.78:paUmVqxY 言語は割といい感じなのに何でcargoはこんなにウンコなん(´・ω・`) : デフォルトの名無しさん [sage] 2017/11/13(月) 21:10:10.81:W6k1I/AE cargoのどこが不満やねん : デフォルトの名無しさん [sage] 2017/11/13(月) 21:12:20.77:o8y42drl ビルドとパッケージマネージャを一緒にしてcrates.io必須にして、他のビルドツールとの連携がつらいんでNIH症候群になりがちで、あんま好きになれないのがcargo 環境変数でビルド先のディレクトリが変わるけど、そこらへんのドキュメントも乏しいのが難点 : デフォルトの名無しさん [sage] 2017/11/14(火) 01:18:01.25:03b/WoCZ 戻り値の型をflow sensitiveに推論してくれなくて、rustcが推論間違えてそれに気付くのに一日潰れてしまった。 ,88 わかる。囲い込んでるのにcargo自身が大したこと出来なくて色々困るんだよね。 色々方針が変わるし。mvnと同じ問題起こしたnpmと同じことしてるし。 言語は良いんだよ。 : デフォルトの名無しさん [sage] 2017/11/14(火) 01:25:20.09:Meoq/IF/ rust製のOSSのウェブサーバーってないの? : デフォルトの名無しさん [sage] 2017/11/14(火) 01:50:40.15:xg4XyUK/ hyperかな Webフレームワークのironやnickelがhyperに依存してる : デフォルトの名無しさん [] 2017/11/14(火) 17:05:10.90:RZwCC6tv ロケット : デフォルトの名無しさん [sage] 2017/11/14(火) 17:57:48.10:Meoq/IF/ ウェブサーバーって書き方が悪かった RocketやIronを使って実際に運営されてるウェブアプリはある? 小規模なTwitterクローンとかでいいんだけど : デフォルトの名無しさん [sage] 2017/11/14(火) 22:28:34.56:xFziBOix server書いてます。フレームワーク書いてますは沢山あるけど運用例聞かないね、そう言えば。 : デフォルトの名無しさん [sage] 2017/11/15(水) 01:12:59.55:Yh7CedoH だってどこも使ってないもの 泥箱みたいなところはモジラから金もらって「使ってます」って提灯持ちしてるだけ 事例やソースが一切出てきてないのが証拠 いい加減Rustそのものがモジラのステマの産物だと認めろ。これはプログラミング言語ではない : デフォルトの名無しさん [sage] 2017/11/15(水) 02:07:05.71:xYQYBhLn プログラミング言語ではある : デフォルトの名無しさん [sage] 2017/11/15(水) 02:56:35.18:p5zaPhLE ディスりにモジラ絡める時点で長いこと荒らしてるいつもの暇人だってすぐ分かるんだよなあ 自分から具体的な話ができないししてもすぐ反論されて終わるもんだから他人の愚痴に便乗するしかできなくなってる ボローチェッカに自分のコード全否定されて頭がおかしくなった可哀想な子を生み出したRustの業は深い : デフォルトの名無しさん [sage] 2017/11/15(水) 03:08:53.86:xYQYBhLn ボローチェッカにボローボローに否定されたんやなぁってやかましいわwww : デフォルトの名無しさん [sage] 2017/11/15(水) 06:53:08.67:nRwvVPky つーかおまえらはrustで何書いてんの? : デフォルトの名無しさん [sage] 2017/11/15(水) 10:20:38.06:QoaSbxja それな まだ仕事で使ってる人はいないだろうし : デフォルトの名無しさん [sage] 2017/11/15(水) 10:32:37.69:I7ANqDvy 仕事で使ってるけど、小さな会社なので、皆さんのご期待には沿えない。 : デフォルトの名無しさん [sage] 2017/11/15(水) 10:49:24.15:FBksKtwj せめてモジラの提灯持ち以外にまともにプロダクションで使ってる企業を出してから言えよ : デフォルトの名無しさん [sage] 2017/11/15(水) 11:05:39.14:oyAT9Por 糖質は同じ言葉を繰り返すからすぐ分かる。 : デフォルトの名無しさん [sage] 2017/11/15(水) 11:45:28.60:FBksKtwj 反論できずに糖質認定か : デフォルトの名無しさん [sage] 2017/11/15(水) 13:03:45.77:PSu/RMx1 クローズドソースのときって、どういうスタイルなの? crateのパスを相対で書きまくるのか、巨大ctateをつくるのか : デフォルトの名無しさん [sage] 2017/11/15(水) 13:27:56.09:p5zaPhLE ttps://www.rust-lang.org/en-US/friends.html 公式サイトのこのページくらいは見たことあるだろ?無いのか?無さそうだな。 まともな耳目がついててこのページ見てるならそんなレスできねえもんな : デフォルトの名無しさん [sag] 2017/11/15(水) 14:07:55.37:FBksKtwj まさかソースといってモジラの大本営発表持ち出してくるとは思わんかったわ そんなもんただの提灯で何の意味もない。使ってる根拠にはならない せめてそういう企業がGithubで公開してるものがあるとかなら認めるがそうじゃねえだろ : デフォルトの名無しさん [sage] 2017/11/15(水) 14:16:38.25:MzdtAyc5 ちょっと前までのfirefoxをRust使って書けるわけない失敗すると言い張ってからの この流れは笑える : デフォルトの名無しさん [sage] 2017/11/15(水) 14:21:13.24:FBksKtwj 失敗してるやん Rustなんかで書き直したせいでアドオン全滅してる : デフォルトの名無しさん [] 2017/11/15(水) 14:22:10.55:bBOLEH2G 昔と比べるとだいぶオープンソースな時代にはなったが、 全てがオープンソースで開発されるような時代ではない。 公式の発表を信じずに何を信じろと? 「俺を信じろ」とでも言うつもりか? 「公式」と「お前」どちらのほうが信用度が高いのかまさか君にはわからないのか? : デフォルトの名無しさん [] 2017/11/15(水) 14:22:39.30:bBOLEH2G まぁ、けど確かにここに載っているのは社内の一部の物好きな社員が メンテの必要もないくらい簡単な社内ツールとかを作るのに 利用しているだけのような気はしているんだが、実際はどうなんだろうな? : デフォルトの名無しさん [sage] 2017/11/15(水) 14:25:51.46:FBksKtwj 少なくともブラウザから得た個人情報の横流しとステマで生計を立ててる非営利()組織の大本営発表は信じるに値しない : デフォルトの名無しさん [sage] 2017/11/15(水) 14:35:48.33:MzdtAyc5 キミの笑いのセンスには脱帽だよ : デフォルトの名無しさん [] 2017/11/15(水) 14:36:17.78:bBOLEH2G それは設計の段階で従来のアドオンとの互換性の一部を捨てるように仕様変更したからだよ。 firefoxのアドオンは自由度が高すぎるが故に、セキュリティに問題を抱えやすかったし、 アドオン同士が衝突して落ちるとかも結構あったから、そこら辺をChromeと同レベルくらいに制限して、 セキュリティと安定性を取る方向に方針転換した。 仕様が変わってるんだから、Rustで書こうが他の言語で書こうがどっちにしろ従来のアドオンの一部は動かないよ。 : デフォルトの名無しさん [] 2017/11/15(水) 14:42:32.68:bBOLEH2G あ、これネタだったの? 気づかずにマジレスしてしまったわ。すまん。 : デフォルトの名無しさん [sage] 2017/11/15(水) 14:49:29.35:p5zaPhLE こっちとしちゃ糖質クンに「自分は視野狭窄している馬鹿なんだ」って気付いてもらうんじゃなく ただどっちが妥当な話をしているのか周りに伝わればいいんだわ。乙。 Redditで、自社の既存のシステムをRustで書き直したよって言う投稿をよく見かける 自分で触った感じでも、プロトタイピングや全く新しいシステム作るときは他の言語でやった方が楽な気がするけど、 試行錯誤もRustでやった方がはやいわってなるのかね? : デフォルトの名無しさん [sage] 2017/11/15(水) 14:49:41.95:FBksKtwj ネタなのは自殺したブラウザの方だろ : デフォルトの名無しさん [] 2017/11/15(水) 15:32:16.99:bBOLEH2G どちらが信用度が高いのか本当に分からなかったようだ。。。 君には呆れを通り越して憐れみを覚えるよ。 : デフォルトの名無しさん [sage] 2017/11/15(水) 15:38:56.68:a1L9d6tA そういう大きな話じゃなくて、もっと身近な感じでrust使ってるかどうかを聞きたかったんだけど、ここまでしか出てこないな : デフォルトの名無しさん [sage] 2017/11/15(水) 17:13:53.76:QoaSbxja rustでチェスの対戦サイト(サーバー)作りましたとかないわけ? goとかscalaではいくつかあるけど(もちろんphpも) : デフォルトの名無しさん [sage] 2017/11/15(水) 18:04:29.51:I7ANqDvy 今まで「担当者の趣味でなんとなく」C, Go, Python, Rubyで書かれていたツールをRustで書いて おー速いやんとニヤニヤしてる段階 crateのパスは相対 : デフォルトの名無しさん [sage] 2017/11/15(水) 18:07:27.47:lnZNl5oY やっぱ細かく分けてるの? っていうほど巨大なプロジェクトじゃないかな? : デフォルトの名無しさん [sage] 2017/11/15(水) 18:17:07.13:6qkyb6Qq Rustでコード書くのって意外と楽しいよね クロージャもスッキリしてるし そもそもあと実は俺はスネークケース文化が好き map_or ←この時面がすき mapOr ←こんな言語は(あるとしたら)嫌い : デフォルトの名無しさん [sage] 2017/11/15(水) 18:58:57.26:JXP4Zmpc ドワンゴがなんか作ってたね : デフォルトの名無しさん [sage] 2017/11/15(水) 21:05:47.07:Kx4c/qA9 スクリプト言語を趣味でやってる俺ですが firefoxの軽さに感動してrustに興味を持ちました 現在ネットでrustについて調べてる最中なんですが c++の置き換えだとかっていう情報はよく書かれてますけど 実際c++を書いたことの無い自分にはいまいち掴めません なんか他に特徴的なとこはあるんでしょうか? マルチプラットフォームのguiアプリとか作ってみたいです : デフォルトの名無しさん [sage] 2017/11/15(水) 21:54:08.10:zsyPe7CY >なんか他に特徴的なとこはあるんでしょうか? 自分でガシガシ書く向けだよ。C++より綺麗に。JITなんざ頼らねぇ(れねぇ)、GC邪魔(やる余裕がない)って 領域向けに抽象度をある程度保ったまま書ける。メモリ管理にリージョン使うから解放タイミングが予測できるし、 組み込みもベアメタルもいける。nightlyは書式統一されたインラインアセンブラもある。 低レベル全部rustで書いてもいいし、ライブラリだけrustで書いてCから呼び出せばC++不要。 >firefoxの軽さに感動してrustに興味を持ちました 前にも言ったがfx57の速さにrustは関係ない。設計が根本的に変わった影響。 Servoにあるhtmlの並列トークナイズがfxに移植されたらさらに速くなる。 そんで、言語自体は遅いよ。コンパイラもまだ改善途中だし。 標準ライブラリのコードは速度のためにunsafeだらけで、 JIT/GCがある環境みたいにド直球で素直なコード書くもんじゃなくて、 速くなる部分はLLVMの部分だからコンパイラのバックエンドの違いでしかない。 tracing gcないから開放できないメモリがあるのは他と同じ。 : デフォルトの名無しさん [sage] 2017/11/15(水) 22:03:43.52:rT1iYiCt 会社で使うコマンドラインツールはほとんどRustで書いてる。 昔はPythonで書いたりしてたけど、使ってるうちにパフォーマンスが問題になったりすることが多くて 後で書き直したりするくらいなら最初からRustでいいや、と。 : デフォルトの名無しさん [sage] 2017/11/15(水) 23:13:04.10:bBOLEH2G コマンドラインツールをRustでってのはときどき聞くんだけど、 GUIのアプリをRustでってのは聞いたことないな。 そもそもRust製のマルチプラットフォーム対応GUIフレームワークってのを聞いたことない。 Rust製のまともなGUIフレームワークとか存在してるの? : デフォルトの名無しさん [sage] 2017/11/16(木) 00:51:52.06:81E2YZma なるほど、コマンドラインツールか。 rust に合ってる領域かもって初めて納得した。 : デフォルトの名無しさん [sage] 2017/11/16(木) 02:21:07.10:fZgVNMfR gnomeは積極的にRustに寄っていってたはず 他は知らん : デフォルトの名無しさん [sage] 2017/11/16(木) 02:27:03.23:fZgVNMfR pecoとか見てるとコマンドラインツールをカジュアルに作るならgoのが向いてる気もするが…… rustにもrgあるし一概にどっちが優れてるとは言えんが : デフォルトの名無しさん [sage] 2017/11/16(木) 03:12:54.72:fiTPZdVA gnomeってrustで置き換えていくの? rustの実用的なGUIってgtkぐらいだと思うけどqtもそろそろ実用段階だったりするのかね : デフォルトの名無しさん [sage] 2017/11/16(木) 11:39:32.01:W2aOUAlV rustで書いてるosってrudoxだっけ? あれってlinuxカーネルののrustによるリファクタリングって事でいいの? l : デフォルトの名無しさん [sage] 2017/11/16(木) 12:32:25.88:Uttk70vk んなわけねーだろ : デフォルトの名無しさん [sage] 2017/11/16(木) 12:53:49.49:W2aOUAlV 完全な新しいos? じゃあlinuxにかなうわけねーじゃん。ただの自己満プロジェクトかぁ : デフォルトの名無しさん [sage] 2017/11/16(木) 13:34:34.31:Uttk70vk OSとしての実用は自己満レベルでも、コードベース資産としては価値あるんじゃねーの?知らんけど 世の中にはいくらでも自己満OSプロジェクトあるんだからそこは許してやれ あのGNUですらHurdってOSを自己満で書いてんだ : デフォルトの名無しさん [sage] 2017/11/16(木) 13:34:41.95 Rust Essentials - Second Edition がPacktから出版されましたね : デフォルトの名無しさん [sage] 2017/11/16(木) 17:48:48.97:dSTVIPFJ linixこそ個人のお遊びプロジェクトだったんじゃないのか : デフォルトの名無しさん [sage] 2017/11/16(木) 17:50:56.93:dSTVIPFJ オライリーはどうなってんの? : デフォルトの名無しさん [sage] 2017/11/16(木) 18:55:22.46:Uttk70vk 少なくとも自分はKonozamaくらってる : デフォルトの名無しさん [sage] 2017/11/16(木) 20:07:31.98:v4h2PTyC 発売してないよね? : デフォルトの名無しさん [sage] 2017/11/16(木) 22:51:18.03:a7TN1Oxp LZ4圧縮とか、シェルとか、Redox OSはサブプロジェクトに結構見るべきものがある Pijulプロジェクトで開発されたSSHライブラリとかもそうで、副産物がいい味出してる : デフォルトの名無しさん [sage] 2017/11/17(金) 00:27:49.05:oCT+XqQK urxvtをrustで書き直して🙏 alacrittyはなしで🙅 : デフォルトの名無しさん [sage] 2017/11/17(金) 01:16:04.93:r4qIw16A そうね。その頃にはオープンソースなunix osが無かったからみんな喜んだ。でも今はlinuxがあるわけで。 まぁでもマイクロカーネルらしいし ドライバはlinuxのが使えるとかすれば、化けるのかな? : デフォルトの名無しさん [sage] 2017/11/17(金) 01:29:54.30:AQwbboRb 歴史の知識もOSの知識も無いなら変なこと言わないほうが良い : デフォルトの名無しさん [sage] 2017/11/17(金) 01:36:37.62:pIVssbCG BSD系列全否定ワロタ : デフォルトの名無しさん [sage] 2017/11/17(金) 01:43:43.14 茂みから鉞が跳んでくるぞ〜 : デフォルトの名無しさん [] 2017/11/17(金) 01:49:33.84:3GAWOghK BSDは訴訟がなければな。 あとminixも最初からライセンスが修正BSDだったらな。 : デフォルトの名無しさん [sage] 2017/11/17(金) 02:00:54.43:r4qIw16A linuxは未だにcで書かれてるわけだけど、 それがrustで書き直されたとしたらどうなるの?予想として。 メモリ使用量は減る? バグは減るよね。 : デフォルトの名無しさん [sage] 2017/11/17(金) 04:58:41.34:Q8rdVBz+ ID:r4qIw16A かまってちゃん : デフォルトの名無しさん [sage] 2017/11/17(金) 05:02:58.63:n+fIjN+j 恐らくバグば減る、メモリ使用量は増える C言語がサイズ減に全振りしているのをrustは安全側に振ってるからな だがその前にLinusがブチ切れるだろ間違いない : デフォルトの名無しさん [sage] 2017/11/17(金) 09:41:50.16:p03/6wS8 let foo = Foo { c: f1(), a: f2(), b: f3(), }; let bar = (f1(), f2(), f3()); 構造体やタプル構築の時って、式の評価順序はソースに記述されてる順序で確定してるんだっけ? ここでいうと f1 -> f2 -> f3 で : デフォルトの名無しさん [sage] 2017/11/17(金) 10:10:51.70:j/YEi+T5 そもそもgnuの成果物でもなんでもない不自由なコンパイラであるrustcでコード書くことを御大がよしとするわけねーだろっていう GPLでrustc書き直してから出直してこい : デフォルトの名無しさん [sage] 2017/11/17(金) 11:43:43.45:DHrRs5YV そんなあり得ない話どうでもいい : デフォルトの名無しさん [] 2017/11/17(金) 13:35:22.27:Eetf/DNi BSD ← ボスドーって読むのですか? : デフォルトの名無しさん [sage] 2017/11/17(金) 19:53:41.29:RD2my8vU 確かに go でもいいのかもしれんが、rust で作るとしたら、 規模とかランタイム速度要求とか 良いところなんじゃないの?って気はしたよ。 少なくともOSやブラウザをこれで作るって話よりかよっぽど現実的な感じがする。 : デフォルトの名無しさん [sage] 2017/11/17(金) 22:23:35.56:n+fIjN+j rustは明らかに大物を矛盾なく作り上げるの向きと思うんだけれどもな 小物なら正直メモリの心配なんかせずに「mallocの後にfree不要と(以下略)」式にOS任せにしても構わんし : デフォルトの名無しさん [sage] 2017/11/18(土) 00:01:05.69:ptgryUw4 見解の相違としか言いようがないな。 大物をGCなしで作るとか、よっぽどのプロジェクトじゃないとありえん気がするよ。 : デフォルトの名無しさん [sage] 2017/11/18(土) 01:19:21.35:/UyFtFcG linuxをrustで書くとか rustがcに勝る安全性の部分ではcではバグになりうる部分がrustではバグにならないということはあるだろうけど 移植にしろゼロから書き直すにしろ、これら以外のバグが新たに大量に発生するわけで(現行のcで書かれたものは長い間かけてそれらのバグを1つ1つ潰してきた結果であり) : デフォルトの名無しさん [sage] 2017/11/18(土) 01:51:07.07:Tj1Ciaix mozilla はそれやったんだよな(恐怖) : デフォルトの名無しさん [sage] 2017/11/18(土) 01:59:12.51:ZQLxHiSg そもそもブラウザこそGC使いたくない大物の代表みたいなもんで、rustはそのために作られたわけで : デフォルトの名無しさん [sage] 2017/11/18(土) 12:58:34.70:TdFdr2wf そのうちAIを駆使してcからrustに理想的にTranslateする技術ができるよきっと : デフォルトの名無しさん [sage] 2017/11/18(土) 13:32:56.68:Tj1Ciaix AIは置いといて c2rust は同じく妄想した ふと思ってググったら関数定義を rust で使えるようにするツールが引っ掛かった c2rust.py 唐突な Python ワロタ : デフォルトの名無しさん [] 2017/11/18(土) 15:08:10.48:s0a9MZOf 組み込みなら割と普通。 : デフォルトの名無しさん [sage] 2017/11/18(土) 16:08:11.01:9rFYKu0I bindgenというのはある が、c->rustのトランスパイラは無理だろう。ValidなCでもvalidなRustには自明には移せない : デフォルトの名無しさん [sage] 2017/11/18(土) 17:29:31.19:b75x0sPb libcクレート使えば、見た目が半分CっぽいRustプログラムが書ける。 : デフォルトの名無しさん [sage] 2017/11/18(土) 18:50:09.96:ttSwrPbv 勉強中だが業務で初めてRust使う事になった 1000行程度のプログラムだけどこれを機会にスキルアップしないとだ : デフォルトの名無しさん [sage] 2017/11/18(土) 19:25:49.39:GOdqC4Co 給料良さそう : デフォルトの名無しさん [sage] 2017/11/18(土) 21:18:03.25:huCirX/z 業務でとかうらやましい : デフォルトの名無しさん [sage] 2017/11/19(日) 10:39:11.94:t35wRkSN Rustを業務で使った結果、毎週の報告で「コンパイル通らないので修正中です」を繰り返し 全然進捗が出せずに左遷減給からの自主退社コンボをくらう モジラのステマなんて信じたばっかりにかわいそうにwwwwww : デフォルトの名無しさん [] 2017/11/19(日) 12:35:39.34:lEYmgXHF コンパイル通らない、って聞くけど、ソースジェネレーターって無いの? : デフォルトの名無しさん [sage] 2017/11/19(日) 13:30:32.58:gjzb/Bmo 新興言語を業務に採用して爆死するパターンはSwiftで既に学んだから、 Rustの業務採用は考えられない。 : デフォルトの名無しさん [sage] 2017/11/19(日) 13:54:00.95:l33ZkuH7 コンパイルも通せないようなバカはお呼びじゃない。 : デフォルトの名無しさん [sage] 2017/11/19(日) 14:29:17.14:JSKIwKyh Cで書いたコードがgccやclangできっちりコンパイル通るのに rustに移植して通らないのはrustc(というかRustという言語)が腐ってるからだろ : デフォルトの名無しさん [sage] 2017/11/19(日) 14:39:52.55:v1Fqqpkv 多言語にベタに移植してコンパイル通らないって喚くって、アホそのもののコメント乙 : デフォルトの名無しさん [sage] 2017/11/19(日) 14:44:41.47:Iq1MXC0c バグがコンパイル時と実行時のどちらで見つかるかというだけの話なんだがなぁ CのデバッグよりRustのコンパイル通す方が楽だわ… : デフォルトの名無しさん [] 2017/11/19(日) 15:02:25.94:QT7cD2cz 何処から突っ込んでいいのかよく分からないのだが。 まず、君の言い方では「C(gcc or clang)でコンパイルが通ったものをそのまま他言語に 移植したらそれもコンパイルが通るはず(通らない言語は欠陥品)」と言っているように聞こえるんだが、 Cは「弱い静的型付け」の言語なので、Rustどころか「強い静的型付け」のJavaやC# にさえCをそのまま移植するんじゃコンパイルは通らないぞ。 Java,C#の場合はジェネリックやインターフェースや(出来るだけ使いたくないが)キャストを 使用してコンパイラに対してしっかりと型安全を保証してやらなければコンパイルは通らない。 対して、Cは「弱い静的型付け」なのでコンパイルを通すだけなら場合によってはキャストすら必要なかったりする。 まさか、そのレベルから分かっていないのか? だとしたらRustの所有権云々以前の問題なのだが。 : デフォルトの名無しさん [sage] 2017/11/19(日) 17:16:18.02:PCwXQfC9 そのレベルは移植の段階で調整しとるわドアホ やっぱモジラ信者はRustのコンパイラこそ至高で、それを通せないプログラマの方がクソって論調か 相変わらず判で突いたような理論だな : デフォルトの名無しさん [sage] 2017/11/19(日) 17:18:54.26:PCwXQfC9 俺が言ってるのは、別にマルチスレッドで動かすわけでもないプログラムを所有権どうこうで弾いて、 本来正しく動くはずのプログラムがコンパイルエラーになり、つまりプログラミング言語としてはご法度の、 書けないプログラムが存在するってことについて異議を唱えてる : デフォルトの名無しさん [sage] 2017/11/19(日) 17:20:45.77:PCwXQfC9 このスレでも何回も言ってるのに未だに理解しないの 本当に工作員って感じだな : デフォルトの名無しさん [sage] 2017/11/19(日) 17:33:10.07:WE8Zr98v 本来正しく動くはずのプログラムの例を挙げたら? : デフォルトの名無しさん [] 2017/11/19(日) 18:48:30.65:lEYmgXHF 無理だと思うよ。 信者ガーとか言ってるのが居るけど、Codeで示せるなら最初から出してるだろうし。 : デフォルトの名無しさん [sage] 2017/11/19(日) 20:31:34.38:PtQzPwdH mozillaが工作してるならこんなところじゃなくてtwitterなどでやるだろうし 工作員連呼してるのは自分自身が他言語の工作員だからでは : デフォルトの名無しさん [sage] 2017/11/19(日) 22:24:37.23:Wp15ODw9 C/C++から移植して動かない例か。メンバー間参照(self-borrowing)がある構造体くらいしか思いつかんが、 Vec<T>に対する&T -> インデックス使う Stringに対する&str -> インデックス使う Map<K,V>に対する&V -> Entry<K,V>使う 異なるメンバーTに対応する&T -> enum使う で大体対応できるような気がする : デフォルトの名無しさん [sage] 2017/11/20(月) 00:02:25.61:E35fLroX 業務で速度重視でrustとgoの選択肢がある時にどっちを選ぶべきか悩んでしまう 個人的にはrustの方が好きだしパフォーマンスも出るんだろうけど、今後のメンテ(教育コスト含む)とか考えたらgoにすべきなのかなって 今更null安全でも無くmapやfilterも無い言語は…って感じではあるんだけど グリーンスレッドは嬉しいが : デフォルトの名無しさん [sage] 2017/11/20(月) 00:32:58.09:76vYtb+v 目的による 外向きサーバ作るならGoのが学習コスト抑えられて楽にスケールする Rustとの速度差はネットワーク帯域でつぶれて有意に出ないことが多い 長期間メンテするcmdツールやデータ管理ツール作るならRustの方がかっちりかけるから負債になりにくい Goは気を抜くと容易にサクラダファミリア化する : デフォルトの名無しさん [sage] 2017/11/20(月) 01:32:59.51:E35fLroX なるほど 言語としてはrustなんだが、他の人達がついてこれるかが心配だ : デフォルトの名無しさん [sage] 2017/11/20(月) 10:20:40.69:XLZ/FUc4 がRustを導入した結果、コンパイルが通らずにチームの生産性がだだ下がり 連帯責任で左遷、給与減、恨みを持った部下に夜道で襲われる未来がみえるぅー↑ : デフォルトの名無しさん [sage] 2017/11/20(月) 10:41:24.04:JFYV8vnq Goはよく知らんけどnull安全もジェネリックもない言語使うくらいならC++でよくね?としか思わない : デフォルトの名無しさん [] 2017/11/20(月) 11:21:03.04:E3G43xCO いやGCあるかないかは重要な要素でしょう。 : あ [sage] 2017/11/20(月) 12:39:17.94:tBvw28f4 Goは標準ライブラリが本当に標準だし、それ故にクロスコンパイルが楽ってのもあるな。 libcを選ぶなんて、しなくて良い。 : デフォルトの名無しさん [sage] 2017/11/20(月) 18:43:04.56:4/lwe8rJ つまりbetterc的な感じでかな。 goはrustよりはちょっとした気持ちでつかえる。 sshクライアントライブラリまで標準で、しかもopensshとかに頼らず全部自前であるとか、 どんだけ再発明しまくってんのとか。 : デフォルトの名無しさん [] 2017/11/20(月) 18:46:19.09:kx54kaAZ 次スレからワッチョイ有効にしようぜ 同一人物だと思うけどいい加減ウザい : デフォルトの名無しさん [sage] 2017/11/20(月) 21:33:56.64:PEMZL+h7 賛成 : あ [sage] 2017/11/20(月) 23:44:16.41:tBvw28f4 ワッチョイしたらそんな変わる? あんまり変わらん気もするが。 : デフォルトの名無しさん [sage] 2017/11/20(月) 23:49:47.66:65TnaXvU あるスレは罵倒が激減してたなー : デフォルトの名無しさん [] 2017/11/21(火) 07:50:43.65:nLoZ7hhk アカヒを遮断したら、差別書き込みが激減してたからね。 : デフォルトの名無しさん [sage] 2017/11/21(火) 08:39:58.18:bKAvrS9R 発言者が区別つくし、自演も面倒臭くなるからいいんじゃない? : デフォルトの名無しさん [sage] 2017/11/21(火) 09:21:54.95:9TNiXSb6 NG出来ないのはいやだ : あ [sage] 2017/11/21(火) 12:42:33.16:QsmG8G9Z なるほど。メリット多いのね。 : デフォルトの名無しさん [sage] 2017/11/21(火) 13:01:12.33:OOffmQFA ちょっと違う 「あらゆる」書き込みが減る ワッチョイだとそもそも書き込まないという人はそれなりにいる 都合よく自分の嫌なものだけが減るわけではない そこは認識して受け入れないといかんよ あとワッチョイを途中でやめることは実質不可能なのでそれも覚悟すること : デフォルトの名無しさん [sage] 2017/11/21(火) 13:52:32.34:49KeK6o/ ワッチョイは自演にはそんなに効果はないと思う 日替わりのIDに代わって日をまたいで同一IPアドレスの奴をNGしやすくなるだけだと思う : デフォルトの名無しさん [sage] 2017/11/21(火) 14:05:16.20:6lkYtARd そういや前にも書いたけど、2ch関連のクレート有るね : デフォルトの名無しさん [sage] 2017/11/21(火) 15:20:46.73:J5Wiskwy カジュアルな荒らしは減る : デフォルトの名無しさん [sage] 2017/11/21(火) 15:58:50.23:OOffmQFA カジュアルな書き込みが全部減るんだよ 普通の雑談、普通の質問、普通の回答、普通の自演、普通の荒らし、普通の無自覚アスペ、全部だいたい均等に減る 残るのはワッチョイ出ても構わないような本気の雑談、本気の質問、本気の回答、本気の自演、そして本気の荒らしと本気の無自覚アスペ だからご利益的には各自手元でどうにかする分類タグとしてのだね、これ以外を喧伝してるのはなんもわかってねえ で、わかったうえでの導入はご自由に : デフォルトの名無しさん [sage] 2017/11/21(火) 16:06:33.77:dr4UMioZ ID:OOffmQFA 必死だな。 : デフォルトの名無しさん [sage] 2017/11/21(火) 16:12:36.25:OOffmQFA 仮に過疎ったりうまくいかなくなったりして「ワッチョイやめよう」という話になったとしてものように言われて元に戻せない 不可逆なので覚悟だけはしておいておくれ : デフォルトの名無しさん [sage] 2017/11/21(火) 17:01:01.88:4sVotJ+F 荒らしが減るほうが良い : デフォルトの名無しさん [sage] 2017/11/21(火) 17:26:31.56:NnekayZo ワッチョイ&IPアドレス表示で問題ないと思うよ IPアドレス表示されて困ることは特に無いし 自演対策には効果ないだろうけどIPアドレス代わらない奴でウザい奴はアボーンできるし : デフォルトの名無しさん [sage] 2017/11/21(火) 18:15:30.73:/EAu6a+F ボローチェッカさんに怒られてばっかりでめげそう(´・ω・`) : デフォルトの名無しさん [sage] 2017/11/21(火) 18:23:17.22:Yd3TZj7r メンターがおればなあとよく思う Option::as_mutとOption::as_refの存在に長いこと気付かないでいたせいで、自分の設計が悪いのか随分悩んだ : デフォルトの名無しさん [] 2017/11/21(火) 20:03:12.33:2amYig3U IP表示は抵抗ある ワッチョイ導入はして欲しいけど : デフォルトの名無しさん [sage] 2017/11/21(火) 20:20:19.61 君に期待してるから叱るんだよ 本当に君を諦めたら適当にOK出して実行時に事故らせるよ : デフォルトの名無しさん [sage] 2017/11/21(火) 20:26:40.82:eepYX3vq 一般論だけど 最初のうちは小さく作ってみるといいよ 一挙にいっぱいやろうとすると大変よ : あ [sage] 2017/11/21(火) 20:37:54.37:3Ux+/vWv カジュアルな書き込みって漠然としてるな。 「このスレは○○だから書き込み辞めよう」って時点で既にカジュアルではない気がするけど。 そんな程度で書き込みを辞める奴の情報なんてしれてるだろ。 本気の質問・雑談で良いじゃないの。 : デフォルトの名無しさん [sage] 2017/11/21(火) 21:13:02.29:M1nLzBxS いやーほんとRustプログラマの選民思想ここに極まれりって感じだな Rustのコンパイラは選ばれし者しか通せない 通せない奴はプログラマとして失格、発言権など無い モジラらしいわ : デフォルトの名無しさん [sage] 2017/11/21(火) 21:50:26.14:34EnqYlD 「選民思想だ! 自分は排斥されてるんだ!」って完全に病人だなコイツ : デフォルトの名無しさん [sage] 2017/11/21(火) 21:58:31.22:kk07Tlre モジラ|Mozilla|信者|工作員|感じだな : あ [sage] 2017/11/21(火) 22:03:12.06:3Ux+/vWv どういう事? コンパイルに関して言えば、コンパイラが文句言うように直せばコンパイルできるし、何より安全じゃん。 どっちかと言うと、選ばれしものしかまとまなソースが書けないCよりも一般寄りなくらいかと。 別にコンパイル通せなくても書き込みゃいいじゃん。これはゴミだ、って。主義主張は自由かと。 通せないやつには書き込む権利はない、と俺が言ってるように聞こえるならば、 つまり自分が「書き込む権利がないと言われてると思い込んでる、通せない奴」だって事? : デフォルトの名無しさん [sage] 2017/11/21(火) 22:26:37.39:M1nLzBxS 何度もこれは言語未満のゴミだって根拠と共に書き込んでるのに コンパイラ通せない奴の僻みだのなんだのいってキチガイ扱いしたのはてめえらじゃねえか : デフォルトの名無しさん [sage] 2017/11/21(火) 22:27:51.07:zhx3LFfP むしろ守ってりゃ他はどうでもいいみたいな馬鹿が増える印象 こういう看板みて、禁止されてなければやっていいんだと勘違いするバカみたいに。 ttps://www.google.co.jp/search?q=%E5%85%AC%E5%9C%92+%E9%81%8E%E5%89%B0%E3%81%AA%E6%B3%A8%E6%84%8F%E6%9B%B8%E3%81%8D&source=lnms&tbm=isch&sa=X&ved=0ahUKEwjmyoeF4s_XAhXCnpQKHdoiCEIQ_AUICigB&biw=1822&bih=903#imgrc=WVv8avT_bPk8NM: : あ [sage] 2017/11/21(火) 22:47:38.52:3Ux+/vWv どういう事?つまりコンパイル通せないって事? : デフォルトの名無しさん [] 2017/11/22(水) 00:32:52.98:ypfVoZmJ イミフなdisリって単なる背乗りだから役立たずなんだがなあ。 じゃあどういう言語なら良いの?って聞くとダンマリw シャドーとか所有権で挫折したのかな? GC無しとか、動的っぽい使い方が出来るようにする為のもんだって分かってれば、あーこういうアプローチも有りなんだなと思えるけどね。 : デフォルトの名無しさん [] 2017/11/22(水) 07:43:02.63:h8Su9zOg キチガイ扱いしたのは事実だが、「僻み」といったことは一度もないぞ。 暇だったし、過去レス検索して確認したから間違いない。 被害妄想甚だしいぞ。 第一、どこがコンパイル通せないかを具体的に書いてくれたら指摘してやるって言ってるだろ。 お前「Cを移植したらコンパイルが通らん」としか言わねえんだもん。 そんな漠然とした情報じゃ指摘しようがねぇよ。 : あ [sage] 2017/11/22(水) 08:39:28.41:MjBhGus4 僻みでも何でもなく、そこがいいところなのになぁ、だと思うけどね。俺も。 コンパイルできてたCも、多分misra案件だとまず静的解析ではねられるか上司にしこたま怒られる類だと思うよ。 : デフォルトの名無しさん [sage] 2017/11/22(水) 11:27:55.39:ZStLkVDO rustってASTにアクセスできる仕組みってあったりするの? : デフォルトの名無しさん [] 2017/11/22(水) 11:41:33.74:h8Su9zOg 何がしたいの? nightly なら syntax クレートとか使えばできると思う。 使ったことないからよく分からんけど。 stableじゃ出来ないんじゃないかな?たぶん。。。 誰かもっと詳しい人いる? : デフォルトの名無しさん [] 2017/11/22(水) 11:59:25.37:ypfVoZmJ で、どういう言語なら良いの? またダンマリか、話題逸し?w : デフォルトの名無しさん [sage] 2017/11/22(水) 13:10:05.98:DRQ8kz+8 一般に普及した言語の仕事でクソ仕様にひどい目にあって アンチになるというのなら理解できるが普及すらかまだわからない 新興言語でここまでアンチ活動する情熱の根源はどこだろう : デフォルトの名無しさん [sage] 2017/11/22(水) 14:44:44.34:frJPN6Uq リアルで実害を被ると言及することすら嫌になるよ 粘着ができるのも個人的に気に食わないの範囲に留まってるからさ : デフォルトの名無しさん [sage] 2017/11/22(水) 14:48:04.93:/F1hTabp 同じ事言ってるだけでかまってもらえるからだろ : デフォルトの名無しさん [] 2017/11/22(水) 15:18:26.95:h8Su9zOg キチガイ扱いされてでもかまってもらいたいとか、とんだドMだな。 それはむしろキチガイ扱いされていることを喜んでいるという認識でよろしいか? : デフォルトの名無しさん [sage] 2017/11/23(木) 03:56:47.06:khAm3OAp 一つの構造体の中にVecの実態とそのスライスを持たせるような事って出来ないのかな バイト列を解析して、元データの実態と意味毎に分けたスライスを持たせたいなって思ったんだけど構造体作る時に同時に渡そうとしたら怒られる とりあえず実態だけ持たせて特定の場所のスライスを返却するメソッドを持たせたけど設計的にこれでいいのかな? : デフォルトの名無しさん [] 2017/11/23(木) 09:03:18.56:XBDj7YCq 普及した言語disると反論も大きいからねぇ。 かと言って余りにマイナー言語じやあ、disる場さえない。 なので自然に、中間の位置に有る言語に擦り寄ってくる。 昆虫の走光性みたいな知能。 : デフォルトの名無しさん [] 2017/11/23(木) 10:41:45.82:e8aKLB85 じゃあ、Goのほうに行ってくれればいいのに。 : デフォルトの名無しさん [sage] 2017/11/23(木) 14:48:36.52:8FY51a0F この言語やっぱ参照をもつのは愚策だな Lifetimeでインタフェース複雑になるし、ボローチェッカーが無理ゲーになる この言語用の設計しないと : デフォルトの名無しさん [sage] 2017/11/23(木) 14:51:03.97:fSfOEtsA スライスも参照だからself-referential structになっちゃうからRustで素直には書けんよね。インデックスが今んところベストだと思うよ その例だとバイト列に直接アクセスしない想定だと思うけど、個人的には解析結果は元データに従属したものと考えた方がスッキリするような気がする &strに従属するCharIndices<'a>みたいな : デフォルトの名無しさん [sage] 2017/11/23(木) 16:24:37.64:ZTbvaPlF 言語をdisる意味ってマジでわかんないよな。 素直に自分の好みの言語スレでマンセー言ってるほうが建設的。 : デフォルトの名無しさん [sage] 2017/11/24(金) 01:49:02.02:gTD5BNH2 ありがと やっぱり素直には出来ないよね も書いてるけど、rustに適した設計をする必要がある感じだね 元々vm系言語やスクリプトばかりだったけど、rust始めてからスタックやヒープ、メモリコピーの発生とか意識するようになって今後の自分の為にもなってそうだ : デフォルトの名無しさん [sage] 2017/11/24(金) 14:20:50.17:3aMUpzGJ Announcing Rust 1.22 (and 1.22.1) ttps://blog.rust-lang.org/2017/11/22/Rust-1.22.html try演算子がOptionにも対応したのが目玉か。 マイナーアップデートは mac の High Sierra 用。 : デフォルトの名無しさん [sage] 2017/11/24(金) 18:14:00.14:YCelFDj4 1.RustからHTMLレンダリングエンジンを使いたい HTML&CSS等をレンダリングしてビットマップを得たい 2.HTMLレンダリングエンジンの動作をカスタマイズしたい 不要な機能 JavaScript、ネットワークアクセス、audio or videoタグなど 改変する機能 CSS等にプロパティを追加して任意の動作をさせる、画像等へ任意のフィルタを適用など 候補はBlink、Gecko、Servoあたりを考えていますがRustから使うならやはりServo? いずれにしろ組み込んだ上でさらにカスタマイズするような資料は見つけられない・・・ : デフォルトの名無しさん [sage] 2017/11/24(金) 18:25:01.95:jGATcgg1 そもそも何をしたいのか : デフォルトの名無しさん [sage] 2017/11/24(金) 19:14:48.32:YCelFDj4 カスタマイズできるラスタライザーが欲しい 日本語が使えて画像を挿入できて線を引いたり出来るもの 入力はHTML以外にPDFやPostScriptなども考えたけどジェネレートや レンダリング、デバッグを考えるとHTMLがお手軽かなと・・・ 今考えているフローはこんな感じ 別ツール→言語(出力結果を制御するメタデータ付き)→ラスタライザー→ビットマップ+α : デフォルトの名無しさん [sage] 2017/11/24(金) 19:53:35.95:FoN8LV5Y あー分かった ノベルゲームだろ? : デフォルトの名無しさん [sage] 2017/11/24(金) 21:33:57.00:Vllmf8cf ノベルゲームだったらスクリプトやマルチメディア系のタグを殺す意味が判らない : デフォルトの名無しさん [sage] 2017/11/24(金) 22:15:49.83:bWSaVEO9 librsvgでSVGをいじくり回すんじゃダメ? ・Rustバインディング(rsvg-rs)あり ・CSS,XSLT,DOM操作で加工可能 : 243 [sage] 2017/11/25(土) 01:18:11.42:P27kKgvI ありがとう。SVGって文字を扱えるんだっけ・・・って調べてみたら扱えるみたいですね 行けそうな気がしますがGPL/LGPL系のライセンスは使えるライブラリを制限するので避けたいです C++だけどsvgrenとか?情報少なすぎてちゃんと動くのかすら不明。日本語フォントとか大丈夫なのだろうか CでラップしてさらにRustでラップするようなのかな : デフォルトの名無しさん [] 2017/11/25(土) 05:40:17.26:lbdvAXfn Javaも最初の頃はマトモに書いてもコンパイル通らなかったこといくらでもあったもんな。 : デフォルトの名無しさん [sage] 2017/11/25(土) 12:29:42.95:r7AGpeaJ 本気の荒らしと本気の自演と本気の無自覚アスペはいいのか…? 自分に都合がよいものだけが都合よく残るって都合よく考えるなって言われてるんだろ : デフォルトの名無しさん [sage] 2017/11/25(土) 13:02:12.25:kotn+Cy/ 終わった話題に粘着する人キター : デフォルトの名無しさん [] 2017/11/25(土) 13:14:26.95:lbdvAXfn RustでGUIってイケてる?っていうか、GUIライブラリ多すぎるだろ・・、 GtkとQtメインでやってるけど、JavaFXもいいし、Pythonなんてバインディング沢山あるし、 Rustなんてやりだしたら、もうキリがないよ・・・ : デフォルトの名無しさん [] 2017/11/25(土) 13:15:21.53:lbdvAXfn もうどれか一つでGUI決めてくれねえかな・・。スゲエ、面倒。 : デフォルトの名無しさん [sage] 2017/11/25(土) 13:19:24.38:ZL0yjpO8 おじいちゃん、GUIはブラウザってきまったでしょ? : デフォルトの名無しさん [sage] 2017/11/25(土) 13:39:30.15:alyoZhJV GUIはElectronみたいな方向に行ったほうがいいのかね : デフォルトの名無しさん [sage] 2017/11/25(土) 13:42:04.43:kotn+Cy/ Blink を Servo で置き換えた Selectron 来い : デフォルトの名無しさん [sage] 2017/11/25(土) 14:09:00.72:OgtFvRib バカが調子に乗って新しい言語使って書き散らしたコードをメンテする経験をすればわかるようになるよ。 : デフォルトの名無しさん [sage] 2017/11/25(土) 14:37:28.91:mxSpQEHX 言語じゃなくてそのバカをdisれよw : デフォルトの名無しさん [sage] 2017/11/25(土) 14:41:23.39:P27kKgvI 個人的に検討するGUIフレームワーク 簡単な奴→MS HTAやElectronなど。Webで使われている技術で実装できる 凝った奴→wxWidgets。高機能かつ高速、大抵の物は作れるが罠もある。もしくはAPI直叩き 昔結構悩んだけど結局上記あたりに落ち着いた。当時検討した物 GTK→LGPLウザイ。パフォーマンスが良くない(最近は良くなった?) Tk→低機能で作れない物がある。パフォーマンスが良くない Qt→LGPLウザイ。パフォーマンスが良くない JavaFX→パフォーマンスは悪くないがJREの初期化(≒起動)に時間がかかる バカに無計画にコードを書かせているバカが問題なのであって言語が悪いわけではないだろう : あ [sage] 2017/11/25(土) 14:57:49.91:UfRnLBpA 良いだろ。というか、それらを止めるのは現実的な方法では不可能。イエスマンを集めて楽しくワイワイ()になるぞ。 記名制のフォーラムでも本気の荒らしや本気のアスペや本気の無自覚は幾らでも居たんだから。 : デフォルトの名無しさん [] 2017/11/25(土) 17:24:23.29:oLmjygAJ hyperってシングルスレッドなんなね ベンチマークも結果がバラバラでよう分からん : デフォルトの名無しさん [sage] 2017/11/25(土) 21:02:37.96:OgtFvRib まあそうなんだが、 言語によって弾けるとする linus の意見には賛同するところはある。 : デフォルトの名無しさん [] 2017/11/25(土) 21:09:22.03:3zoUsuFj そういうやつって言語関係なく台無しにしてるんじゃね? : デフォルトの名無しさん [] 2017/11/25(土) 21:22:20.34:LOgLWN1+ 確かに、そういう奴ってどの言語使っても大体はクソコードを書くだろうな。 ただし、ベストプラクティスを教えてくれるやつがいるかどうかで差はあると思う。 新興言語はベストプラクティスを教えてくれる奴が極端に少ないから、余計にひどくなる。 対して、普及している言語は周りにベストプラクティスを教えてくれる人がいれば バカでもある程度はマシなコードを書く(書くことを強制される)んじゃないかな。 : デフォルトの名無しさん [sage] 2017/11/25(土) 21:32:32.35:OgtFvRib 関係ないんだが 「関係ない」ということを理解せずに無駄に新しい言語推しで 現場嵐してくることが問題。まずはてめーのコードを直せと。 : デフォルトの名無しさん [sage] 2017/11/25(土) 21:34:35.12:WRH8mdq5 そのバカと言語disに走るID:OgtFvRibは同レベルだよ。 : デフォルトの名無しさん [] 2017/11/25(土) 23:18:19.74:3zoUsuFj 単語の断片に反応してるだけの思い付き厨だろうな。 : デフォルトの名無しさん [sage] 2017/11/26(日) 00:38:40.95:FoFKguj9 それって人事が無能なだけじゃあ。まぁ日本にそういう会社は多いんだけどな : デフォルトの名無しさん [sage] 2017/11/26(日) 01:44:59.31:prdTxomD いうほど言語disに走ってる訳ではないけどね。 ただ言語disに走る気持ちは理解できるってこと。 他の言語disパターンとしては単純に自分があんまり知らんから 理解する時間の節約のための dis かな。 : デフォルトの名無しさん [sage] 2017/11/26(日) 02:00:15.38:zvEdo3BX rustは組み込み向けの新言語になると思ったけど、全然流行らんな 早くC++から脱したいのに : デフォルトの名無しさん [sage] 2017/11/26(日) 02:37:39.20:8lbYkPLC 昔の一部の組み込み系では製品の安定を求めるために コンパイラのバージョンアップすら信用しない(=古いバージョンを使用し続ける)ことがあったなー : デフォルトの名無しさん [sage] 2017/11/26(日) 02:50:50.14:FcDi9KjV 『"(Rustが売りにしてるような部分に関して)良いコード"を書きたいと思っているh人』にとっては素晴らしい言語となる可能性の高い言語がRust 『"良いコード"の定義が違う人』にとっては 『"良いコード"を書きたいと思っているわけではない人』にとっては : デフォルトの名無しさん [sage] 2017/11/26(日) 02:52:44.07 Rustがコケると得するのは誰か : デフォルトの名無しさん [sage] 2017/11/26(日) 03:23:13.42:FoFKguj9 目的より手段を優先する日本じゃ無理だろw どうしてもやりたいなら自分で立ち上がるしかないんじゃないか : デフォルトの名無しさん [sage] 2017/11/26(日) 03:57:56.67:2SXqucAT rustが使いたいからその仕事を立ち上げるって明らかに手段と目的が入れ替わってますよね : デフォルトの名無しさん [sage] 2017/11/26(日) 09:03:05.51:d0SJzNDY 世界中のプログラマ モジラのクソ提灯で言語未満の自称言語がひとつ減る訳だから : デフォルトの名無しさん [sage] 2017/11/26(日) 09:09:55.82:4gwTKbSY この糖質「提灯」って言葉に執着してるね。 : デフォルトの名無しさん [] 2017/11/26(日) 11:03:05.21:2p4Fc6MR 執着というより単に語彙力がないだけかと。 コイツいつも大体同じようなことしか言ってないよ。 : デフォルトの名無しさん [] 2017/11/26(日) 11:11:18.98:d1Efc0fJ ガウディ本とかで計算モデルを理解してれば、慣れてるという理由で合わない用途に無理矢理押し込もうとしないんだろうけどね。 : デフォルトの名無しさん [sage] 2017/11/26(日) 11:35:06.02:chAORxhD 当人は必死だけどすっかり珍獣扱い : デフォルトの名無しさん [sage] 2017/11/26(日) 16:10:47.30:F1AvYoB1 少なくともswiftに採用しようとしてる機能を先行実装しているだけでも価値ある : デフォルトの名無しさん [sage] 2017/11/26(日) 22:44:13.85:mC/sVuBh Rustが成功したから真似されたんじゃw Apple信者さすがの言い草 : デフォルトの名無しさん [sage] 2017/11/26(日) 22:54:59.36:hn9uvYDF 成功?成功ってなんだっけ? : デフォルトの名無しさん [sage] 2017/11/26(日) 23:15:44.20:4gwTKbSY Swift の仕様変更と比べると、Rust のアップデートはかなり大人しいよな。 : デフォルトの名無しさん [sage] 2017/11/26(日) 23:36:42.57:BDpjXZu3 Rustのメモリ管理の仕組みが破綻してないことを証明しただろ! しかも実務にも耐えてる これが成功でないわけがない : デフォルトの名無しさん [sage] 2017/11/27(月) 01:38:36.80:A6Q33Aj/ 循環グラフとか動的計画法とか書けない言語のどこが破綻がないのかいってみろ工作員 : デフォルトの名無しさん [sage] 2017/11/27(月) 01:55:07.26 RustでDPできないの? : デフォルトの名無しさん [sage] 2017/11/27(月) 02:01:44.73:Kmvld91s 出来ない人がいるだけ : デフォルトの名無しさん [sage] 2017/11/27(月) 07:36:56.24:30J1+TRs 簡単にwasmコンパイルできる環境が整ってきたな ttps://twitter.com/badboy_/status/934742946754244613 今、試したけど、Windowsでも動いた。 cargo-wa は動かんかったけど。 : デフォルトの名無しさん [sage] 2017/11/27(月) 16:32:30.04:UGzoAGct このエラーメッセージ、表示されるときと(当該箇所の修正をしていないのに)も関わらず表示されないときがある Why? error[E0605]: non-primitive cast: `{integer}` as `f64` = note: an `as` expression can only be used to convert between primitive typ es. Consider using the `From` trait このエラーメッセージが表示されるのは このエラーメッセージの示す箇所と全然無縁な箇所でコンパイルエラーが出たときに同時に表示される そしてその他所であるコンパイルエラーを解消するとこのエラーメッセージも同時に消える : デフォルトの名無しさん [sage] 2017/11/27(月) 22:23:59.13:0avMxfTz 言語構文とツーリングを改善したRust 1.21 ttps://www.infoq.com/jp/news/2017/11/rust-1-21-released 「Rust 1.22」リリース 2017年11月27日17:00 ttps://mag.osdn.jp/17/11/27/170000 : デフォルトの名無しさん [sage] 2017/11/27(月) 22:38:51.64:zgUQvI9i 実際、g++ なんかはバージョン違うと相当挙動違うけどね。 : デフォルトの名無しさん [sage] 2017/11/28(火) 01:05:16.27:oL6iYiK7 エラー時には情報足りなくてusize等に推論してるから、かなあ 構文チェック -> 型推論&チェック -> ボローチェッカーって順番でエラー出してる感じだけど、 関係無い場所でのエラーのせいでas f64してるローカル変数の型推論が不十分な可能性がある 型推論は重い処理だから何らかの最適化のせいでエラー時の挙動が分からないのではないか : デフォルトの名無しさん [] 2017/11/28(火) 01:05:23.35:YEKXo1x2 Rustでイミュータブルに拘る人は何なの?ミュータブル使えよ : デフォルトの名無しさん [sage] 2017/11/28(火) 01:26:37.66:9rdMMleK ミュータブルなんて怖いもの使えないよ〜>< : デフォルトの名無しさん [] 2017/11/28(火) 01:38:14.99:YEKXo1x2 ミュータブルにする必要のない箇所をイミュータブルにする 基本はミュータブルで使え、ミュータブルしてなかったらコンパイラが教えてくれる、そのときイミュータブルに変更すればいい : デフォルトの名無しさん [sage] 2017/11/28(火) 02:15:45.91:OnNJR7WO ID:YEKXo1x2 完全に頭おかしいな : デフォルトの名無しさん [sage] 2017/11/28(火) 05:26:38.97:9EzjspMa Rustでイミュータブルに拘るのは、TypeScriptで型付けることに拘るようなもん : デフォルトの名無しさん [sage] 2017/11/28(火) 06:36:09.88:oe1VgQrD いミューダブルって、Cellの話をしているの? : デフォルトの名無しさん [sage] 2017/11/28(火) 06:49:49.21:WfYnw+8u 最近勉強し始めたんだけど、デフォでイミュータブルなのに思いのほかmutキーワード使う局面が多くて面食らってる。 : デフォルトの名無しさん [sage] 2017/11/28(火) 06:56:41.60:9EzjspMa イミュータブルに拘ると、Scalaとかでもそうだが、コピーだらけになる コピーを恐れてるとイミュータブルを徹底できないよ : デフォルトの名無しさん [sage] 2017/11/28(火) 06:59:54.84:bNHGW3XK コピーってmut並みに最適化してくれんの? : デフォルトの名無しさん [sage] 2017/11/28(火) 07:35:10.58:oe1VgQrD あ、そういうこと。むりやりイミュータブルにする人たちがいるのか : デフォルトの名無しさん [sage] 2017/11/28(火) 09:28:24.80:L9vMnZgT 静的型付け初めてなんだけどいきなりRustは敷居高いだろうか : デフォルトの名無しさん [sage] 2017/11/28(火) 10:02:32.22:hv4LFVGU > イミュータブルに拘ると、コピーだらけになる > コピーを恐れてるとイミュータブルを徹底できない 例出してみ : デフォルトの名無しさん [sage] 2017/11/28(火) 12:38:41.40:Q+QzpY2X イミュータブルとかメモリを富豪的に使うだけで性能はなんら上がらない、いかにもお偉いさんが机の上だけで考えたクソ手法だろ なんでFortranやCが現役なのか考えたこともないやつがイミュータブルをもてはやす : デフォルトの名無しさん [sage] 2017/11/28(火) 12:59:41.96:ZfJDlsQ3 メモリが富豪的って、それお前の設計が悪いだけやで : デフォルトの名無しさん [sage] 2017/11/28(火) 13:02:27.70:318e3gj2 それは言い過ぎだろ なんでもイミュータブルにするべきとは思ってないが、 並列性が必要なプログラムではイミュータブルは重要視しているよ 並列性が性能に直結しない(難しい)のは残念な話だけど…… : デフォルトの名無しさん [sage] 2017/11/28(火) 13:47:27.77:Q+QzpY2X 値変えないならコピーするしかないだろ。それが富豪的でなくてなんなんだ? 並列計算で必要なのはイミュータビリティじゃなくて、変数スコープ分離と外部依存性の無いアルゴリズムだ 大方MPIすら使ったことないんだろうが、 共有リソースにアクセスしなきゃいけない並列プログラム組んでる時点で 設計が破綻してるとみなせると思うがそこんとこどう考える? : デフォルトの名無しさん [sage] 2017/11/28(火) 14:14:02.57:hv4LFVGU このバカ、コンパイラが良きに計らうってことを知らんのか? : デフォルトの名無しさん [sage] 2017/11/28(火) 14:26:19.19:GpBjXyhn thx なるほど、コンパイル途中でエラーすると一部の推論に失敗してしまうのか : デフォルトの名無しさん [sage] 2017/11/28(火) 14:42:06.12:LCKhcLzq const に異常にこだわるくせに異常に長い関数書く馬鹿は見たことあるな。 その前に関数切り出せと。 たぶん Rust が一般に広まるとボローイングルールをまともに理解できなくて コンパイルできないから関数に切り出さないバカが増えると思われる。 : デフォルトの名無しさん [sage] 2017/11/28(火) 15:17:40.57 イミュータブルにすることでコンパイラによる最適化の余地が増えるんでないの? ミュータブル派とイミュータブル派の宗教戦争勃発なの? : デフォルトの名無しさん [sage] 2017/11/28(火) 15:25:32.16:Q+QzpY2X コンパイラが善きに計らうって、 つまりconstついてた(mut非指定の)変数がレジスタ割り当ての結果変更され得る最適化が起こるってことか? さすかにそんな最適化は聞いたこと無いがソースあるのか? 即値展開ならわからんでもないが、それと並列は関係ないし : デフォルトの名無しさん [sage] 2017/11/28(火) 16:00:32.21:lii/QdBe アマゾンでオライリーのProgramming Rust出てるのな アーリー版じゃ無い完全版かな? どうでも良いけど蟹座の俺が心惹かれる表紙 : デフォルトの名無しさん [sage] 2017/11/28(火) 16:21:14.75:318e3gj2 「使ったことない」って人を判断したがるのは使ったことを自慢したいから? ある数学上の問題を高速に解くために 2000年ぐらいにMPI を数ヶ月触ったことある程度で 以降は関わってないけど、それはなんか関係あるのか? 設計が破綻しているかどうかは問題によるだろ どんなに考えても共有リソースにアクセスしなきゃいけない並列プログラムなんて山ほどある 共有リソースへのアクセス削減なんてみんな取り組んでる そのための一ツールとしてイミュータビリティは重要な概念だろJK > 並列計算で必要なのはイミュータビリティじゃなくて、変数スコープ分離と外部依存性の無いアルゴリズムだ 「重要視」と言ってるのに「必要」と解釈するのか…… 変数スコープ分離という用語は知らん : デフォルトの名無しさん [sage] 2017/11/28(火) 18:02:39.24:wSmX/jVF kindle版の話か 紙版を注文しちゃってるんだが : デフォルトの名無しさん [sage] 2017/11/28(火) 18:17:27.07:oL6iYiK7 ガーガー言うほど文句が出るもんでも、全力擁護すべきもんでもないと思うがね>デフォルトでimmutable Haskellほどやり方が変わるわけでもない、C/C++のconstより明快、letとvarで分けるほど使い心地が違うものにはならない、 ttps://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/box-syntax-and-patterns.html ↑にあるようなBoxを使って大きい構造体を関数に渡すのはRustじゃ悪手ってとこだけ知ってればいい : デフォルトの名無しさん [sage] 2017/11/28(火) 18:18:12.38:Q+QzpY2X MPIは不変性は並列化に必ずしも必要じゃないって話の例に出しただけだから、 さわった上で不変性が必要って主張するならまあそうなんだろう データを不変にして触るノードの分だけコピーすりゃそりゃデータ競合は起きないだろうが、 その分ノードへの転送量だってかかるし、メモリも食う だから富豪的で、額面上の並列度は上がっても性能には寄与しないと言ってる 俺が知らないだけでもっと良い最適化が不変変数にかかるなら完全に俺が無知晒したでめでたしなんだが : デフォルトの名無しさん [sage] 2017/11/28(火) 20:36:19.23:nHLuJ5vk 業務のDBとかででっかいBeanやテーブルさわってるとImmutableこだわると死ぬ気がする ライブラリレベルだとImmutableすごいよさそうなんだが : デフォルトの名無しさん [sage] 2017/11/28(火) 20:40:51.18:7DSslbhb immutableがいいのはソースの可読性が高まるのと、マルチスレッド化したときにリソースアクセスに問題ないのが保証できることでしょう。バグらなない自信があるなら効率を求めてmutableにするがよろし。 : デフォルトの名無しさん [sage] 2017/11/28(火) 21:07:28.65:LCKhcLzq mut にするのもそこまで困難な言語設定ってわけでもないし、 デフォルトが immutable でもいいんじゃねとは思う。 まあ大規模に作ったことはないからその際の困難はわからんけど、そこまで問題にならんのでは? : デフォルトの名無しさん [] 2017/11/28(火) 21:37:26.40:RsLfLMGU let mutって書くのめんどくせーしvar : デフォルトの名無しさん [] 2017/11/28(火) 21:37:34.07:RsLfLMGU 追加してほしい : デフォルトの名無しさん [sage] 2017/11/28(火) 22:58:48.40:91xy27Pm mutにするのをめんどくさくするというのが let mut構文を採用した理由なので varはよっぽど何かない限り入らないと思う : デフォルトの名無しさん [] 2017/11/29(水) 00:16:55.36:ZRmpNQ2i Haskellのイミュータブルは永続データ構造?参照の使いまわし? Rustのイミュータブルは?コピーしないと使いまわせない? : デフォルトの名無しさん [sage] 2017/11/29(水) 00:58:38.85:RLTBNHC0 wasmに出力するのって、依存ライブラリも全部pure Rustじゃないとダメなの? : デフォルトの名無しさん [sage] 2017/11/29(水) 03:28:58.51:wq9Dycsx 1.22でOptionにも?使えるようになって、haskellのMaybeモナドっぽく使えて捗るわ ブロック内だけでも使えたら良いんだけど仕組み的に無理そうか : デフォルトの名無しさん [sage] 2017/11/29(水) 12:04:01.36:TbD0G3jq try catchみたいな構文検討されていたような : デフォルトの名無しさん [sage] 2017/11/29(水) 19:35:23.16:PZaIONIl Rustを叩いている奴ってミラーレスカメラを叩いている一眼レフカメラ信奉者と同類に見える 大抵の場合は合理的な方が最終的に選択されるけどな : デフォルトの名無しさん [sage] 2017/11/29(水) 20:42:06.07:FCGUeU3g mutable変数扱うなバーカ、というメッセージだと思ってる 必要なら再宣言させるようにして人為バグを減らそうという魂胆は分かるぞ(Javaのfinal教徒感 : デフォルトの名無しさん [sage] 2017/11/29(水) 20:50:40.91:wq9Dycsx BufReaderとかReadするStringとかにもmut必要何だからmut禁止とか無理じゃね? 不要なmutだったらワーニング出るでし、必要だったらコンパイルエラーになるでしょ 必要な形で使えば良いだけなのに一体何を議論してるんだ? ミュータブルが気に入らないならhaskellおすすめ : デフォルトの名無しさん [sage] 2017/11/29(水) 22:01:09.26:pXSSowmn Readした結果はmutableでいいのにlet mutと書かなければならんの面倒 人によってはletで再宣言するのかな : デフォルトの名無しさん [sage] 2017/11/30(木) 01:36:34.69:zpCxrqzF 例えばさ mutな変数1つ宣言してそこに足し上げていくのと、 非mutな計算結果同士を足して新しい非mutな計算結果を作るのと 素朴に考えれば前者の方が省リソースだよな 別にその程度コンパイラの最適化やレジスタ割り当てでどうとでもなるだろうとも思うが : デフォルトの名無しさん [sage] 2017/11/30(木) 02:16:29.28:ypA28Khv ttps://qiita.com/koji_mats/items/62e85a87cc580e225796 これ見たんだけど、なんでwinがlet mut winじゃないんだろうって不思議に思った。 let win = gtk::ApplicationWindow::new(&app); win.set_title("Vanilla Text"); で、コードを調べてみたら、こんな感じにFFIを呼んでるだけだから、 概念的にはオブジェクトを変更してるけどRust的にはmutが要らないという仕組みらしい。 ちょっと違和感無い? fn set_title(&self, title: &str) { unsafe { ffi::gtk_window_set_title(self.to_glib_none().0, title.to_glib_none().0); } } : デフォルトの名無しさん [sage] 2017/11/30(木) 02:51:13.41:AHSKxIeg ポインタの先がどう変更されようが、ポインタを持ってるだけの側は不変。 : デフォルトの名無しさん [sage] 2017/11/30(木) 03:27:18.42:NyMSxVXi gtkはgoのほうが簡単 : デフォルトの名無しさん [sage] 2017/11/30(木) 07:37:17.88:YOUdxrbO Cellもしらんのか : デフォルトの名無しさん [sage] 2017/11/30(木) 13:33:26.57:2d5TEUTF Rust的な設計の指針というかコツみたいのって無いですかね… 勉強のつもりで外部のCのライブラリとの間に入るちっちゃなFFIのラッパーを書いてみたんですが、Cの感覚で書く->コンパイラに怒られてあーなるほど修正ってのを繰り返してとりあえずは動くようになったんだけど 何をするにも let foo = xxx ; { let bar = foo.xxx() ; bar.yyy() ; } { let baz = foo.zzz() ; baz.www() ; } { let bar = foo.xxx() ; bar.yyy() ; } みたいに書かないといけなくて書いた本人でも「何やねんこのウンコ!」ってなってる(´・ω・`) (Rustがって意味じゃなくて自分の書いたものがって意味で) : デフォルトの名無しさん [sage] 2017/11/30(木) 15:21:22.37:AHSKxIeg どんなエラー出してそんな醜いコード書いてるのかを説明してくれないと。 : デフォルトの名無しさん [] 2017/11/30(木) 19:20:57.05:dqSyxXgg RustがRustで書かれてるのだからRustのリポジトリのコードを読んで参考にすれば勉強になるのでは? ttps://github.com/rust-lang/rust/search?l=rust : デフォルトの名無しさん [sage] 2017/11/30(木) 19:27:22.21:uu2PxLG/ cと触れる部分はしょうがないんじゃないの? その何回も触ってる部分をcで書いてインターフェイスを最小化した後で rust から呼び出す方が正解なんじゃないかね。 : デフォルトの名無しさん [sage] 2017/12/01(金) 00:02:21.38:9zBEgLMI Rustに限らず他言語で書かれたライブラリを利用するときは呼び出し元言語の作法に適合するように改修しないと使いにくいことが多いような : デフォルトの名無しさん [sage] 2017/12/01(金) 00:53:10.98:+mBQRpP6 > Rust的な設計の指針というかコツみたいのって無いですかね… 私も知りたいです! : デフォルトの名無しさん [sage] 2017/12/01(金) 18:20:32.47:MEq6f57k 見た感じFoo::xxx : &mut Self -> BarとかFoo::zzz: &mut Self -> bazとなっているのでbarやbazが生きてるとfooにアクセスできないのが直近の原因だと思うけど、 xxxやzzzが本当にFooの変更を伴わないといけないのかを考えないといけない CellやRefCellを使ってinterior mutabilityを導入したらFoo::xxx: &Self -> Barというメソッドにできる可能性がある まあ実際のソースがどんなもんなのか知らないから適当だけど : デフォルトの名無しさん [sage] 2017/12/02(土) 18:50:17.68:LUcOy7p3 ttps://doc.rust-lang.org/book/first-edition/crates-and-modules.html japaneseってrust作成者らって日本語好きなの? : デフォルトの名無しさん [sage] 2017/12/02(土) 19:17:25.64:XMmE+FVV トーキョー、サムライ、ハラキリ、ゲイシャ! : デフォルトの名無しさん [sage] 2017/12/02(土) 21:21:37.22:nhUA9ni6 公式Twitterアカウントをフォローしてみれば、リツイートに含まれるアニメ画像の多さで分かるだろ : デフォルトの名無しさん [sage] 2017/12/02(土) 21:26:24.08 ジャパニメーション : デフォルトの名無しさん [sage] 2017/12/02(土) 23:06:36.11:LUcOy7p3 プログラマ=アニメオタクの構図は海外でもデフォか : デフォルトの名無しさん [sage] 2017/12/02(土) 23:25:28.54:IvGxcnlE アニメに限らずエンジニアのオタク率は高い : デフォルトの名無しさん [sage] 2017/12/03(日) 02:23:51.05:o8sHMMD+ そもそもエンジニアの時点でPCオタみたいなもんだろ : デフォルトの名無しさん [sage] 2017/12/03(日) 15:14:02.84:nF9LHZwo 標準ライブラリAPIリファレンス見てるけど難しいなぁ。 : デフォルトの名無しさん [sage] 2017/12/04(月) 20:49:12.68:Guj0xD4V map: HashMap<String, usize>をメンバーに持つ構造体Fooを作りHashMap::getをラップするメソッドを定義したいんだけど、 型表記をどう書けばStringとstrの両方を受け取れるようになれるの? : デフォルトの名無しさん [sage] 2017/12/04(月) 20:51:25.15:Guj0xD4V 自己解決。AsRef<str>を使えば良かった : デフォルトの名無しさん [sage] 2017/12/05(火) 00:26:24.15:9T1+J47W panic!で終わらすのでなくErr()を返してエラー時の挙動は呼び出し側に任せる・・・? : デフォルトの名無しさん [sage] 2017/12/05(火) 01:46:51.82:Z65eXqg0 get で使うなら AsRef じゃなくて Borrow : デフォルトの名無しさん [sage] 2017/12/05(火) 08:09:29.16:qtUVw02h こういうことか ttps://play.rust-lang.org/?gist=2b7d7c7aa544cc2dde43c2aa06533c87&version=stable こんなの行けるんだな。doc見てもよう分からんかったありがとう : デフォルトの名無しさん [sage] 2017/12/05(火) 09:27:16.18:hHacdpPt Mercurialも、Python/CからRust/Pythonに切り替えるのか > Python is also hindering us because it is a dynamic programming language. : デフォルトの名無しさん [sage] 2017/12/05(火) 18:20:02.95:zRXsR4tV ソースどこだよデマ乙 歴史あるVCSがRustみたいなゴミつかうわけねえだろ : デフォルトの名無しさん [sage] 2017/12/05(火) 18:38:54.65:lkNfeWcr なんでそれでpython残すんだ? : デフォルトの名無しさん [sage] 2017/12/05(火) 19:47:27.34:qtUVw02h ttps://www.reddit.com/r/programming/comments/7hesom/mercurial_oxidation_plan/ ・hg本体がpythonなんで起動時のラグが気になる、特にスクリプトからhg呼び出す場合に重いからネイティブにしたい ・python2.7のGILのおかげで高速化のための並列化が面倒 ・メモリ安全と並列化をCや古めのC++でやるのはキツい 何故まずpython3に移行しないのかは分からんかった。Rustで書き直すより先にやった方がいいんじゃないかと : デフォルトの名無しさん [sage] 2017/12/05(火) 20:16:52.30:Z65eXqg0 > For Mercurial, Rust is all around a better C. > It is much safer, about the same speed, and has a usable standard library and modules system for easily pulling in 3rd party code. みたいな基地外君発狂しそう。 : デフォルトの名無しさん [sage] 2017/12/05(火) 21:03:22.04:zRXsR4tV ソースはRedditwwwwwwwww ソースは2chよりひでえwwwwwwwwwwww : デフォルトの名無しさん [sage] 2017/12/05(火) 21:16:31.60:qtUVw02h 一次情報はmercurial oxideなんだけどこれが公式mercurialとどんな関係があるかがRedditのスレで言及されてるんだが モジカス連呼基地外君は発狂中だとurlしか読めないのね : デフォルトの名無しさん [sage] 2017/12/05(火) 21:18:53.28:gT8tzSz1 mercurialにpythonで書かれた拡張機能がいっぱいあるからだろうかね : デフォルトの名無しさん [sage] 2017/12/05(火) 21:42:01.40:4Jhqan/B HN見ないんだ? ttps://www.mercurial-scm.org/wiki/OxidationPlan# ていうかモジカス君固定ハンドルつけてくれない?名声もつくよ : デフォルトの名無しさん [sage] 2017/12/05(火) 22:45:09.30:H7tXCLyD 言語が錆でプロダクト名が水銀だから、プロジェクト名が酸化ってのもうまいことつけたな Python3化を優先しないのは、斜め読みした感じだと「hgコマンドをPythonスクリプトから(必要に応じてPythonインタプリタを埋め込んだ)バイナリにしたい」ってあったから、順番的には確かにそっちは後だな : デフォルトの名無しさん [sage] 2017/12/05(火) 22:52:10.21:H7tXCLyD あとは、GILの性能自体はPython3で向上したとはいえ、GILそのものがなくなった訳ではないから、 それで得られる速度向上は並列化と比べてたいしたことないってのもあるんじゃね? あとPython3はそもそも単純なベンチでは2より遅かった気がする : デフォルトの名無しさん [] 2017/12/06(水) 00:11:41.11:aEHwTVhz なるほどね。 個人的にはgitよりmercurialに頑張ってほしい : デフォルトの名無しさん [sage] 2017/12/06(水) 01:15:02.87:6LacDPiL VCSは自身の機能や性能も大事だけどそれを使った開発プロセスの整備と提示が大切なんだなあとgithub見て思う pijulにはちょっと期待してる : デフォルトの名無しさん [sage] 2017/12/06(水) 03:56:18.90:sNDBG4Pk 公式がマジで言ってんのかこれ。多分gitに負け続けて資金調達のためにモジラに泣きついた感じか。そこまで落ちぶれてたんか けどまあwikiの他のNewFeature見てみた限り放置も多いみたいだし、これもそのまま忘れ去られる系だな : デフォルトの名無しさん [sage] 2017/12/06(水) 08:49:40.91:7Z4PG9ak 資金調達のためにモジラに泣きついた感じかキリッ : デフォルトの名無しさん [sage] 2017/12/06(水) 09:15:41.98:o9r2lFwR Rustで大きなプログラムは書けない →Firefoxにしか使われない →Mozilla以外はまともなプロダクトでは使われない →負け組プロジェクトしか使われない 進化を楽しみにしてるぞ : デフォルトの名無しさん [sage] 2017/12/06(水) 09:25:54.43:J6ceqlJH 上から目線で言ってるけど無能そう : デフォルトの名無しさん [sage] 2017/12/06(水) 09:28:53.95:dVNrL5aP 効いてるやん : デフォルトの名無しさん [sage] 2017/12/06(水) 11:24:37.38:g4tVD/U6 374 自体も上から目線でワロタ : デフォルトの名無しさん [sage] 2017/12/06(水) 11:48:39.53:F7bxA/jW 5chでマウント取りは当たり前だからな : デフォルトの名無しさん [sage] 2017/12/06(水) 13:03:02.39:C/GcjX4C コンパイル通せない事がそこまで彼のプライドを傷つけるとは…… コンパイルエラーが発生したときに、自動で「大変申し訳ありませんが、」の文字列を追加表示する コンパイラプラグインを誰か開発すべき : デフォルトの名無しさん [sage] 2017/12/06(水) 17:33:11.66:Zd+Z66A3 Rustつかって書き直すなんて、言うだけはタダだし、言ったことでモジラから金がもらえるなら言うだろうね、落ち目のプロジェクトなら 個人的にはgitより好みだったけどな そもそも言語変えて書き直すとか非現実的なことできると思ってんのお前ら チャットワークは記憶に新しいぞ : デフォルトの名無しさん [sage] 2017/12/06(水) 17:35:26.67:mFCLg4Qg モジラから金がもらえる(キリッ : デフォルトの名無しさん [] 2017/12/06(水) 18:02:57.09:CoVGsVpS いい加減コテつけろガイジ : デフォルトの名無しさん [sage] 2017/12/06(水) 19:19:06.35:enrVe2xz rust ならこういう問題は解決できんの? ttps://qiita.com/i_yudai/items/3336a503079ac5749c35 : デフォルトの名無しさん [sage] 2017/12/06(水) 19:34:24.15:LlbO+WJR それを解決できるのはスレッドの類をGC対象にできる言語のみだろう Ponyはできたような気がする : デフォルトの名無しさん [sage] 2017/12/07(木) 11:46:55.50:4fQhnjSw ponyってあれか。スポンサー企業が一抜けしたやつか : デフォルトの名無しさん [] 2017/12/07(木) 16:49:06.35:e6grhN6X これからやるのにGUIでいいプログラム言語教えてください。Microsoftは無しで。 : デフォルトの名無しさん [sage] 2017/12/07(木) 17:14:54.82:3Pu9MQ/V なんでこのスレで聞く? Java : デフォルトの名無しさん [sage] 2017/12/07(木) 18:42:24.96:wb2m4Sd2 おじいちゃん、GUIはブラウザってきまったでしょ? : デフォルトの名無しさん [sage] 2017/12/07(木) 18:57:24.40:DAqiucIC 実際マジで綺麗なGUI作ろうと思ったらブラウザ使った方が良かったりするからなあ wasm/WebGLのみターゲットにしたGUIツールキットcrateを作る人も出てくるんじゃないかね : デフォルトの名無しさん [] 2017/12/07(木) 19:10:54.37:aNywij93 VueとかReactが便利すぎる : デフォルトの名無しさん [sage] 2017/12/07(木) 20:40:39.18:hv/QEVwp 簡易なもんつくるなら react をてきとうにいじるのが一番覚えること少ない気がする。 : デフォルトの名無しさん [sage] 2017/12/07(木) 20:40:53.05:Hyaivhp0 wasmって使えるのcoreライブラリだけ? : デフォルトの名無しさん [sage] 2017/12/07(木) 21:20:46.84:7uR0ShQv しばらくreact+reduxやってから久しぶりにC#に触ったらやっぱり.NET楽だと思ったわ。 Webアプリ前提ならReact一択でいいけど、スタンドアロンでいいならわざわざ選ばんなぁ。 : デフォルトの名無しさん [sage] 2017/12/07(木) 22:04:12.67:hv/QEVwp .NET は何がどう依存してるかわかりずらくてデプロイするのが面倒じゃん。 : デフォルトの名無しさん [sage] 2017/12/08(金) 18:13:41.90:wmniiGfA Rustは何がどう依存してるかわかりずらくてプログラミングするのが不可能じゃん。 : デフォルトの名無しさん [] 2017/12/08(金) 19:09:50.20:eb9UBXrx よ、クソモジラ君 : デフォルトの名無しさん [sage] 2017/12/08(金) 21:32:53.09:Zo2thUux > ずらく お前はまず日本語を学ぼうな。 : デフォルトの名無しさん [sage] 2017/12/08(金) 22:30:24.09:4nIOqmyr >ずらく ついでにお前もな : デフォルトの名無しさん [sage] 2017/12/08(金) 23:14:50.34:tq7RAj6Q rust使う前に日本語を正しく習得しないとな : デフォルトの名無しさん [sage] 2017/12/09(土) 00:27:43.89 英語やった方がいいと思う : デフォルトの名無しさん [] 2017/12/09(土) 05:14:49.50:GA23pAhd ttps://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/dining-philosophers.html このArcってやつはマルチスレッド以外でも使ったりします? : デフォルトの名無しさん [sage] 2017/12/09(土) 10:29:41.27:YwIpfF9w 日本語マニュアルなんてあるんだな。 相当本気なんだなRust。 Swiftなんて公式は未だに英語だけだぞ。 : デフォルトの名無しさん [sage] 2017/12/09(土) 10:59:59.55:XSUSRhS+ 日本語のやつは1.9時代のやつな? : デフォルトの名無しさん [sage] 2017/12/11(月) 22:26:30.27:6IPQBxXz そういえばPEZYが自分とこのcpuでrust動かしてたな。 : デフォルトの名無しさん [] 2017/12/11(月) 22:32:24.37:s6/Bk6Rt これ? ttp://tanakh.jp/posts/2016-12-20-rust-pezy-sc.html : デフォルトの名無しさん [sage] 2017/12/12(火) 13:19:02.69:wxlBGx5A Cの代替として使ってるみたいだけど、mutとかunsafeとかめんどくさすぎて話しにならないな : デフォルトの名無しさん [sage] 2017/12/12(火) 18:14:51.93:x1rOBdPo やっぱRustは詐欺だな。詐欺会社同士モジラとは馬が合うんだろうな 普通の感覚持ってたらと同じように使い物にならないって感想持てるよなあ : デフォルトの名無しさん [sage] 2017/12/12(火) 19:44:02.91:r7OHvt42 RustはSmallTalkと並び称されるべき言語 Rustは死んでも血脈は残り続けるだろう : デフォルトの名無しさん [sage] 2017/12/12(火) 19:50:08.37:guPPPE2T 死ぬのは決まってるのかよ草 : デフォルトの名無しさん [sage] 2017/12/12(火) 19:50:40.56:r7OHvt42 主要部分丸々Unsafeにした挙句 インラインアセンブラを書いてやればいいですとか なんでもなさそうに書いてあってわろw : デフォルトの名無しさん [sage] 2017/12/12(火) 19:53:48.14:QKUZj3QB プログラミングに限らず安全はタダで得られるはずがないのだが理解出来ない日本人は多い : デフォルトの名無しさん [] 2017/12/12(火) 20:36:13.29:jqGL6fhm なぜRustの苦手分野で語ろうとするのか? これはJava等の高級言語では絶対に出来ないこともRustなら不格好にはなるものの 可能だということを示しているのであってRustで書いた全てのコードがこうなるわけではない。 低級なことをするときはこういう書き方が必要になるというだけだ。 Rustのいいところは低級なところをすべてunsafeでラップすることで、 それより上位層のコードに低級な部分を持ち込まなくて済むようになることだ。 そして、Rustの最大の特徴は高度な型システムとゼロコスト抽象化等の機能であり、 C++, Java以上の賢い抽象化の仕組みを実現しつつC++並みの実行速度で実現できる点である。 unsafeに関しては、あくまでC++の後継を狙っているので低級なコードを書く手段も用意しているというだけに過ぎない。 CやC++にRust程の抽象化や型安全、メモリ安全を保証する機能はあるだろうか? 「そうまでして安全性や抽象化を追求する必要があるのか?」と問われればそれは作るシステムや個人の趣向にもよるだろう。 欲しいと思う人もいるし、それはやりすぎだと思う人もいる。 Rustが苦手としている部分をとりあげて「ほらダメじゃん」とか言われても、 「Rustの得意なところじゃないんだから当たり前じゃん」としか言えない。 要約して一言で言うならば「論点がずれている」。 以上だ。何か反論はあるか? 長文失礼した。 : デフォルトの名無しさん [sage] 2017/12/12(火) 20:49:42.49:r7OHvt42 ようわからん unsafeでくるまれたところでデータ変な風にいじくられたら 結局上までおかしくなるんじゃないの? : デフォルトの名無しさん [sage] 2017/12/12(火) 20:57:21.36:yKSYAIcd こういうの読む度にやっぱ大物専用だよなあと思う : デフォルトの名無しさん [sage] 2017/12/12(火) 21:00:36.03:gOiBnq4b 要件に合わせて方式選択できて、必要であればその範囲を狭めることができるのがメリットでは? : デフォルトの名無しさん [sage] 2017/12/12(火) 21:07:19.45:x1rOBdPo 詐欺師の長文は読むつもりもない 以上だ : デフォルトの名無しさん [sage] 2017/12/12(火) 21:13:22.11:x1rOBdPo モジラも一緒に逮捕されればよかったのに : デフォルトの名無しさん [sage] 2017/12/12(火) 22:02:32.80:WKBp9cNB 404みたいに新しいCPUに移植して特殊な命令使うような話なら C言語でもインラインアセンブラ使ったりするしかなかろう : デフォルトの名無しさん [sage] 2017/12/12(火) 23:28:17.37:WIgA/FGZ 別に上でおかしくならないことを保証してくれるとかではないよ。 単にメモリ保護違反とかが起こるなら必ずunsafe内で起こるってだけ。 それでもプログラム全域のどこで起こるか分からないCとかよりはましだろうってことかと。 : デフォルトの名無しさん [sage] 2017/12/12(火) 23:46:23.16:w89eybus rustのセールストークを真に受けちゃった人にしか見えない。 : デフォルトの名無しさん [sage] 2017/12/13(水) 01:26:07.39:ppLrkL+I >ゼロコスト抽象化 実際にはzero-costじゃなくてzero-overheadだよなrustって。 わかりづらいけど正当なコストはちゃんと払ってるし。 ところで、javaのクソ翻訳にauto boxing and unboxingを「ボックス化」と訳す トンデモ訳が蔓延してるんだけど、リージョンでメモリ管理するrustだと 正真正銘のboxed valueがあって、この訳が「ボックス化」だから逆に紛らわしい。 : デフォルトの名無しさん [sage] 2017/12/13(水) 02:03:31.96:SOXPTBso で、結局はRustはbetter C++なの? : デフォルトの名無しさん [sage] 2017/12/13(水) 02:04:22.47:8wpVTjy4 Javaの方が先にあるのに後発が正真正銘だとかどういう了見だよ : デフォルトの名無しさん [sage] 2017/12/13(水) 05:05:47.72 Haskellマスターtanakhが逮捕されたと誤解を招く書き方辞めろ : デフォルトの名無しさん [sage] 2017/12/13(水) 06:22:58.05:4b7agDte 宣伝文句としてはbetter C++だけど、実際の使用例はbetter Cが多い : デフォルトの名無しさん [sage] 2017/12/13(水) 08:01:26.38:fAEH4Erl 既成ライブラリの中でメモリ保護例外を吐いた経験がある人ならRustのありがたみが判るはず マルチスレッドアプリケーションでトレースバックが参考にならないような状態だともう泥縄 : デフォルトの名無しさん [sage] 2017/12/13(水) 11:51:23.28:ctCEo+oJ そんなコードが散乱してる現場でrustのボローイングに関して まともに対応できるとは思えんが。 : デフォルトの名無しさん [sage] 2017/12/13(水) 11:56:02.61:SyEPusRz よしんばあったとして、Rustに頼るのは間違ってるだろ 不運続きの人間がカルトにはまるようなもんだ : デフォルトの名無しさん [sage] 2017/12/13(水) 17:17:09.03:wA2gfXD8 ここの人たちはまじでレベル低いよね : デフォルトの名無しさん [sage] 2017/12/13(水) 17:22:14.28:SrS6Tw/p まあRustなんて有り難がってる時点でなあ : デフォルトの名無しさん [sage] 2017/12/13(水) 18:09:45.22:wA2gfXD8 いやそうじゃなくて、あんたみたいに知ったかぶってるやつが多い そうじゃないのもいるけど : デフォルトの名無しさん [sage] 2017/12/13(水) 18:46:17.79:SrS6Tw/p しったかぶってるか? C(++)の後継うたってる割に、動くCコードの移植がチェッカーに阻まれて不可能 グラフのような自己再帰構造が書けない そもそも開発元が悪名高いモジラで、言語機能の改善がまったくなされないのに何故か使ってると称する会社だけが謎のペースで増える(恐らく金が動いてる) 例のスパコン詐欺会社で運用されていたらしいという負の実績 事実並べただけでRustがいかにクソか分かるだろ 金が動いてる部分だけはソースないが他は全部ソースつきだ : デフォルトの名無しさん [sage] 2017/12/13(水) 19:01:44.96:lECrl9Kb みんなランタイムエラーの方がコンパイルエラーより好きなわけ?? : デフォルトの名無しさん [sage] 2017/12/13(水) 19:11:47.05:JQsIbvFA んなこたないけどコンパイルエラー出なきゃいいっていう馬鹿が増えそうなのが心配。 : デフォルトの名無しさん [] 2017/12/13(水) 19:17:48.37:sjTFpswL そのまま移植しようとしたらそりゃ難しいに決まってんだろ : デフォルトの名無しさん [] 2017/12/13(水) 19:18:17.70:sjTFpswL しかもあのスパコン会社技術力は確かに高いし 社長がうんこだっただけで : デフォルトの名無しさん [sage] 2017/12/13(水) 19:32:51.33:JQsIbvFA これ見る限り、素直に c で書いた方が圧倒的に楽だろ。。 完全に話題集めのためだね。 ttp://tanakh.jp/posts/2016-12-20-rust-pezy-sc.html : デフォルトの名無しさん [sage] 2017/12/13(水) 19:36:42.74:lMuueXHh まあ、アホほどいっぱい書き込むからそう見えるだけなんだけども。、 : デフォルトの名無しさん [sage] 2017/12/13(水) 19:38:53.62:DaKrOXes 楽なのは書くことだけじゃん : デフォルトの名無しさん [] 2017/12/13(水) 19:43:29.07:YreXArfE [][][] [][][] [] [][][][] [][] [][][][][] [][] [][] [] [][][][][] [] [][][][ [][][][][] [][ [][] [] [][][] [] [][][] [] [][][][] [] [] [][][][][][ [] [][][] [][] [][] [] : デフォルトの名無しさん [sage] 2017/12/13(水) 19:49:19.41:1figGuPs モジラ|提灯|信者|工作員|詐欺|ステマ : デフォルトの名無しさん [sage] 2017/12/13(水) 19:57:43.17:JQsIbvFA dgemmみたいな行列演算をチューニングするとどうしてもああいうコードになるんだよ。 てか多分 c で書いたのを話題のために無理やりrustに書き換えたんだろうね。。 unsafeで囲むとかもうrustで書く意味ないだろそれ。。 : デフォルトの名無しさん [sage] 2017/12/13(水) 20:18:14.75:4b7agDte pezyの例には当てはまらないけど、Cに分けたモジュールリンクするぐらいなら、 unsafe丸囲みの方がビルドが単純になって意味がある。 : デフォルトの名無しさん [sage] 2017/12/13(水) 20:31:13.73:lMuueXHh ワッチョイつくまで加速していいよ : デフォルトの名無しさん [sage] 2017/12/13(水) 20:54:35.27:FrEBhkqx この手のキチガイは荒らすことが目的だからワッチョイを付けてもいなくならないよ : デフォルトの名無しさん [] 2017/12/13(水) 23:24:55.82:ovEDqqcU unsafeで囲む意味が無いとかマジで言ってんの? ここはunsafeだよって一目で分かる利点を理解していない? : デフォルトの名無しさん [sage] 2017/12/13(水) 23:32:58.46:HCqZ9sMc NGしやすくなるだけでOK : デフォルトの名無しさん [sage] 2017/12/14(木) 00:04:22.83:huNKzx1I ワッチョイもunsafeも同じように有用ってことだね : デフォルトの名無しさん [sage] 2017/12/14(木) 02:06:28.32:qcE0Inz8 ボローチェッカじゃなくてモジラに親を殺されたんだな、かわいそうに 悪名高きとか言われても知らんがな。悪い話もいい話も聞かんが : デフォルトの名無しさん [sage] 2017/12/14(木) 02:32:34.93:ImDQ9Tno 元々なんでか知らんがMozillaが嫌いだったところに、 コンパイル通すまでがちょっと難しい言語をリリースして、なんか世界的にそこそこバズって それを自分で使えなかったことで、正気を保てる限界を越えた感じかね 突撃荒らしのバイタリティが妙に高いのも納得できる : デフォルトの名無しさん [sage] 2017/12/14(木) 02:36:48.61:ImDQ9Tno 例のブログみたいに、全部を囲ったらチェッカーの意味ないじゃんって話では 言語機能としてのunsafeの有用性は分かる 確かに全体をunsafeで囲うなら現状はまだCで書いた方がいいと思う Rustからだけ使うなら難しい線だが : デフォルトの名無しさん [sage] 2017/12/14(木) 04:17:05.67:C5mtxm9E unsafeブロック内のRustコンパイラによるチェックはCコンパイラに劣るということ? : デフォルトの名無しさん [sage] 2017/12/14(木) 04:41:03.96:FN0VuvQq 自前のstructのnewメソッドで外部crateのAWSクライアントを作って持たせて、インスタンスメソッドの中でそのクライアントを使いたいんだけど、 そのクライアントがgenerics使ってて実際に返ってくる型が分からない時にstructに持たせる方法ってないのかな 例えばこんな感じの。 [crate] struct<A:Trait1, B:Trait2> Client<A, B> [My code] struct Hoge { client: Client<?, ?> } ソース見たら更に別のバージョンが古めのcrateのモジュールがそこに入ってたりしてて、そうすると同じバージョンの依存crateをこっちでもexternして、それを自分のstructに書いたりしないといけないのかな? : デフォルトの名無しさん [sage] 2017/12/14(木) 13:12:01.23:+r9JdhqC Hogeをgenericにしちゃいけないのか : デフォルトの名無しさん [sage] 2017/12/14(木) 15:01:05.06:FN0VuvQq 外から隠蔽したいかな : デフォルトの名無しさん [sage] 2017/12/14(木) 15:25:18.16:bx+g54aE トレイトオブジェクトは? : デフォルトの名無しさん [sage] 2017/12/14(木) 15:37:10.49:FN0VuvQq 自分でラッパー的なトレイト作って該当の外部structに実装してbox化したら持てそうか やってみる : デフォルトの名無しさん [sage] 2017/12/14(木) 16:59:26.03:FN0VuvQq 自前トレイトでトレイトオブジェクトにしたら出来た! トレイトの使い方はまだ慣れてないな : デフォルトの名無しさん [] 2017/12/17(日) 19:39:49.04:S5+bbMRX [][] [] [][][][] [][] [] [][][][][ [ ][] [ : デフォルトの名無しさん [sage] 2017/12/20(水) 12:24:37.10:QkI0Spk3 LISPスレで見かけたこれが結構良かった。 Exaリーディングのすゝめ ttps://www.slideshare.net/ShinichiMakino1/exa-84358376 : デフォルトの名無しさん [sage] 2017/12/20(水) 13:00:40.50:OeCoTXzU lispとなんか関係あるの? : デフォルトの名無しさん [sage] 2017/12/20(水) 16:53:37.22:PmxuD3Kp Rust界隈では、RustでLisp処理系を作って初めてRust初心者と認められるからな : デフォルトの名無しさん [sage] 2017/12/20(水) 19:40:35.05:w4Ra0RsW そこは電卓でなんとか : デフォルトの名無しさん [sage] 2017/12/20(水) 20:20:27.50 Rust入門書 Rust初心者 RustでLisp処理系を作れる Rust中級者 Rust上級者 : デフォルトの名無しさん [sage] 2017/12/20(水) 20:21:53.84:aJ+/6RQH 何それ怖い : デフォルトの名無しさん [sage] 2017/12/20(水) 20:56:53.63:4jfNXtPu 敷居高過ぎ : デフォルトの名無しさん [sage] 2017/12/21(木) 00:05:29.62:14mdma0k c++はまってたやつがlisp権威にボコられてrustに走るというわかりやすいストーリー : デフォルトの名無しさん [sage] 2017/12/21(木) 00:10:47.84:s3fe5nPo お前の脳内ストーリーは相変わらずだな : デフォルトの名無しさん [sage] 2017/12/21(木) 00:53:33.89:Fp0tYNZy Lisp処理系を作るってLisp以外の言語で作るのRustに限らず普通に難しくね? Lisp用のパーサとか適当なライブラリ拾ってきて作るってんなら話は別だけど : デフォルトの名無しさん [sage] 2017/12/21(木) 01:15:00.66:tLGR8mGR C処理系より圧倒的に簡単なのは間違いない : デフォルトの名無しさん [sage] 2017/12/21(木) 09:26:37.87:VHSiL3Am S式の構文解析なんて再帰で括弧対応とるくらい : デフォルトの名無しさん [sage] 2017/12/21(木) 14:15:12.50:egTpAFaH なんせ初心者LTって名目のLT会で、 Lisp処理系書いただの、ベアメタル開発してみただのってお題が平気で出てくるからな まあ初心者でもこれくらい出来て当然っていう選民思想のなせる技だろう うっかりLT出てしまった同僚があまりの初心者バイバイ加減に途中抜けしてしまったらしく俺に謝ってきたわ お前の言う通りRustまわりは録な世界じゃなかったってな : デフォルトの名無しさん [sage] 2017/12/21(木) 15:09:42.01:2erAH6pr 勉強会あるあるだよな 間口を狭める行為だ。 まあ勉強会行くやつなんて勉強するきないわけだから、そうなるわ : デフォルトの名無しさん [sage] 2017/12/21(木) 15:21:15.07:14mdma0k でも残念ながらrustやりたがる連中の動機のほとんどはそういうマウント飢餓に よるもんだからしゃーない。 : デフォルトの名無しさん [sage] 2017/12/21(木) 15:46:57.61:2erAH6pr rustはとっつきにくいけどc++(をちゃんと使う)に比べたら簡単だよ c++初心者のほうがひどい(すごい) : デフォルトの名無しさん [sage] 2017/12/21(木) 16:29:22.74:NHNfcEn+ C++は会社や学校にやらされてる人が多いから、初心者はちゃんと初心者だろ 勉強会になんか不毛な空気を感じるのは分かる : デフォルトの名無しさん [sage] 2017/12/21(木) 16:53:40.47:B47fEr+Y なんでついて行けなかったらマウントなの? 逆マウントじゃねえの? : デフォルトの名無しさん [sage] 2017/12/21(木) 18:02:20.28:s3fe5nPo ID:14mdma0k からは例によって非生産的な被害者妄想を感じるな : デフォルトの名無しさん [sage] 2017/12/21(木) 18:24:57.39:Z3tvmV5W まあrustの話しようぜ : デフォルトの名無しさん [sage] 2017/12/21(木) 23:49:36.37:Hr0bpa37 rustの話だぞ?界隈に録な人間がいないのは 言語の元締めが個人情報売りさばきのくせに上から目線だけは世界一のクソ企業モジラだから類友なんだろう 絶対に使ってはいけない言語。まあ実用性もないから使えんけどな : デフォルトの名無しさん [sage] 2017/12/21(木) 23:54:02.85:GqKgyaUt モジラ憎しの異常者が今日も頑張ってる : デフォルトの名無しさん [sage] 2017/12/22(金) 00:20:16.73:yyY3EuhM rustってc++よりも簡単なのか? 個人的にはc言語経験者であればc++のほうがとっつきやすい気がする : デフォルトの名無しさん [sage] 2017/12/22(金) 01:13:34.67:MxkH0ZRM CやっててもC++はコード読むのに必要な知識がどんどん増えてくからずっと追いかけてないといけないのがしんどい 追加される仕様は使わなければ問題ないんだけど、コード読む側の負担は考慮してくれない で、覚えるべき内容もクセのあるテンプレート、言語毎に微妙な差異があるオブジェクト指向、演算子定義等々、厄介なものが多い 複雑なことをしようとしたら複雑なコードになるのが普通のCとは随分違う感じがするよ 個人的には良いCを書けることと良いC++を書けることの関連は薄いと思う : デフォルトの名無しさん [sage] 2017/12/22(金) 03:42:39.31 彼はもじらに個人情報を売りさばかれて親を殺された可能性が微レ存 : デフォルトの名無しさん [] 2017/12/22(金) 07:38:52.24:GBrZB/rB 5chでグダってる時点で、脳内ストーリー確定。 : デフォルトの名無しさん [sage] 2017/12/22(金) 09:58:45.71:rTt8+XPB 現実でもちゃんと反Rust反モジラしてるわカス Rust言語に肯定的に言及してるやつとは関わるなって同僚には言ってる 一度怖いもの見たさでLT行ったやつはあまりの選民思想具合に途中で逃げたと謝ってきた : デフォルトの名無しさん [sage] 2017/12/22(金) 10:00:35.49:KkeFD613 キチガイwww : デフォルトの名無しさん [sage] 2017/12/22(金) 10:22:15.57:MxkH0ZRM 言語自体に対する批判も「C/C++で動いてたオレのプログラムがRustだとコンパイルも通らん!」しか言えないキチガイ君 もっと具体的な話をしろと言われても何も言えずにモジカス連呼、周囲に必死にネガキャン そろそろ親を殺されたモジラに会社で孤立もやられるんちゃうか?モジラのせいで会社クビになったり、再就職もモジラが邪魔してくるんじゃないか? すげえ集団だなモジラって。ブラウザ作って新言語作るだけで1人の人生滅茶苦茶にできるんだもの 全盛期のマイクロソフトやIBMでも中々できなかったぞ : デフォルトの名無しさん [] 2017/12/22(金) 12:08:29.64:GBrZB/rB でその活動ってのが5chでグダるになる理由は? : デフォルトの名無しさん [sage] 2017/12/22(金) 12:21:32.68:JCfCdiaY うっかりここでRustに興味を持つやつを逃がすため 特にこのスレはモジラから金もらったのか知らんが妙に持ち上げるやつが多いからな : デフォルトの名無しさん [sage] 2017/12/22(金) 12:38:52.55:fxvf/KNi \ / \ 丶 i. | / ./ / \ ヽ i. .| / / / \ ヽ i | / / / \ -‐ ー __ モ ジ ラ か ら 金 も ら っ た の か -- 二 / ̄\ = 二  ̄. | ^q^ |  ̄ -‐ \_/ ‐- / / ヽ \ / 丶 \ / / / | i, 丶 \ / / / | i, 丶 \ : デフォルトの名無しさん [sage] 2017/12/22(金) 12:59:40.36:9y9ltKJ4 いろいろと可哀想なやつだな まあ頑張れや : デフォルトの名無しさん [sage] 2017/12/22(金) 13:00:04.77:JCfCdiaY ×ブラウザ作って言語作るだけ ○世界中の個人情報売り買いして大もうけして工作員送り込んでる ブラウザも言語もマネロンでしかないわ : デフォルトの名無しさん [sage] 2017/12/22(金) 13:01:45.87:JCfCdiaY ブラウザマネロンだけじゃなくて個人情報収集手段だな : デフォルトの名無しさん [] 2017/12/22(金) 13:16:35.50:YySnaHMg ブラウザが集めるメタ情報を個人情報と呼ぶならGoogleが一番の悪だな。 Firefoxなんて足元にも及ばない。 Go言語でもdisりに行けばどうだ? : デフォルトの名無しさん [sage] 2017/12/22(金) 13:19:17.97:f8seMuZP 発想がトンデモ過ぎてワロタ ブラウザマネロンってブラウザを開発することでマネーロンダリングする手法ってこと? どうやってロンダリングするんだろ : デフォルトの名無しさん [sage] 2017/12/22(金) 13:24:47.80 ただの構ってちゃんでしょ : デフォルトの名無しさん [sage] 2017/12/22(金) 13:25:38.52:JCfCdiaY 出た、Googleをスケープゴートにする工作員! 今やクロームなんかより火狐の方が個人情報収集はひどいぞ なんせ画面のスクショとその上のマウスの軌跡まで送信してるってプライバシーポリシーに明記してるからな : デフォルトの名無しさん [] 2017/12/22(金) 14:15:27.48:YySnaHMg プライバシーポリシーなんていちいち全部読むかよ。 何処に書いてあるかソース元(URL)を載せろ。話はそれからだ。 あと、そんなこと言えるってことはChromeとEdgeとSafariの プライバシーポリシーももちろん全部読んだんだよな。 Firefoxは読んだけどそっちは読んでないから知らないじゃ話にならないからな。 : デフォルトの名無しさん [sage] 2017/12/22(金) 14:37:02.79:Kw0QQsKg スレチ Rustの話をしろ : デフォルトの名無しさん [sage] 2017/12/22(金) 16:32:24.55:yyY3EuhM rustのターゲット層ってぶちゃけc++erだと思うんだけど、 その割にはc++erの間では話題になっていない印象 : デフォルトの名無しさん [sage] 2017/12/22(金) 17:18:44.46:9y9ltKJ4 仕事でC++使ってるとこは開発SDKも含めてC++だしこれまでのノウハウや社内資産あるから困ってないというか 待ってればC++にも新機能入ってくるし : デフォルトの名無しさん [sage] 2017/12/22(金) 17:25:28.17 C++コーディングはストレスで禿げる 禿げずにC++並みのパフォーマンスを獲られないかという人類の宿願がRust : デフォルトの名無しさん [sage] 2017/12/22(金) 18:14:33.04:bOdX3AhV なるほど : デフォルトの名無しさん [sage] 2017/12/22(金) 19:24:35.04:FEUZiQaC c++は安全に書くのが難しい rustは速くするのが難しい : デフォルトの名無しさん [] 2017/12/23(土) 09:43:47.67:LnjVX11P 何か思い付きで毛無したいが為にに、色々と時系列や整合性矛盾にも気付かないのが居るな。 惜しむらくは、ネタが古過ぎで手抜き過ぎ。 : デフォルトの名無しさん [] 2017/12/23(土) 15:59:05.35:3huEAQas 毛無したい... なんか卑猥な響きだな。 : デフォルトの名無しさん [sage] 2017/12/23(土) 20:34:19.49:yTCzKfN3 ttp://blog.goo.ne.jp/narmuqym/e/5793e3c0dc1680a017e64f72b0fb6856 これがRustを使っているなどと吹聴していた詐欺会社の実態 Rustを使っているなどと大ボラを吹いている他の会社も似たようなもんだろう : デフォルトの名無しさん [sage] 2017/12/23(土) 20:43:27.64:7wgq04iU また髪の話してる…… : デフォルトの名無しさん [sage] 2017/12/23(土) 20:53:42.25:2K6JHNCs > 「STAP細胞仮説は自然過程であり正しい。STAP否定論者は荒唐無稽な進化論否定論者だ」 ワロタ : デフォルトの名無しさん [sage] 2017/12/23(土) 22:02:16.59:97OmZxF2 もう叩くのに理屈もへったくれもないな 具体的に何がわるいのかさっぱり : デフォルトの名無しさん [sage] 2017/12/23(土) 22:16:53.43:XxMQCsYn ttps://twitter.com/voluntas/status/944543148113403905 pixiv Sketch LiveはErlang, Go, Rustで作ってるらしい : デフォルトの名無しさん [] 2017/12/23(土) 23:20:56.30:4xY+voZ+ これTwitterで話題になってる糖質のブログやんけ : デフォルトの名無しさん [sage] 2017/12/23(土) 23:24:11.47:7wgq04iU とにかくmozillaに関する物事は全部否定するのが第一で理屈も手段も二の次か 敵意の向け方に糖質に近いふいんき(変換できない)を感じる : デフォルトの名無しさん [sage] 2017/12/23(土) 23:27:19.33:Wkndnp5t 最近の荒らしの間では毛の話が流行ってんのか? てかこいつ脈絡もなくlispの話しだすし@nobkzじゃね? : デフォルトの名無しさん [sage] 2017/12/23(土) 23:30:00.71:3/AR0zR7 驚くほど似てないな : デフォルトの名無しさん [sage] 2017/12/24(日) 00:28:33.50:DahxbI2b これRustを批判するために張ったリンクなんだよね(;・∀・) リンク先にRustの文字が1つもないんだけど。(; ̄Д ̄)? 今軽く調べてみたんだけど、 ここの会社がRustを使ってるって明言しているような情報は見当たらないんだよね。 (見つけられなかっただけかもしれないが。) Rustを開発に使用してるって情報のソースが無いと説得力が皆無なんだけど。 pezyのコアでRustが動くって情報なら見つかったんだけど、 ただ、Rustが動くのはllvmベースだからとも書いてある。 Rustだけ特別扱いされてる訳でもないようだ。 この流れでRustを批判したいのなら、同時にllvmベースの言語も全部批判対象になるんじゃないのか? llvmベースって言うと現在代表的なのはC, C++, Swift, Rustくらいかな。 将来的に対応予定(すでに対応済み?)も含めるとGo, D, C#, (うろ覚えだがJavaも)入るはず。 主要なコンパイラ付きの言語のほとんどを敵にまわした気がする。 : デフォルトの名無しさん [sage] 2017/12/24(日) 00:39:53.65:RXv/EpfS プレゼン初心者向けのイベントだったんでしょ。 : デフォルトの名無しさん [sage] 2017/12/24(日) 01:07:55.87:F1BONnbf 横からだが、スレ遡ったら中の人がRustでこの上で動くコード書いてるブログのリンクがあるぞ : デフォルトの名無しさん [sage] 2017/12/24(日) 08:40:25.62:Z7VMSn3p 中の人って、自称イスラエルハイテクベンチャーCEOとtanakhは何も関係無いだろう : デフォルトの名無しさん [sage] 2017/12/24(日) 08:52:26.56:FsFnxVmK Pezyはtanakahを雇っている tanakhはRust信者 Pezyは詐欺会社よってRustは詐欺! ってこと?自殺しないの? : デフォルトの名無しさん [] 2017/12/24(日) 11:44:59.08:aCkD6VOe まあ元々、Rust批判したいが為にRustに関わりの有りそうなところの批判を持ってくるという、時系列とか因果関係無視したロジックだからねえ・・・ マトモな技術者なら、他言語や他の計算モデルとの比較で批判や改善提案するんだろうけど。 : デフォルトの名無しさん [sage] 2017/12/24(日) 13:00:19.44:Z7VMSn3p ああ、イスラエルハイテクベンチャーというが詐欺という意味じゃなくて そいつの言うとおりにPezyのスパコンの性能が嘘だと言ってたのか 納入先もグルじゃないとまず無理なのに : デフォルトの名無しさん [sage] 2017/12/24(日) 13:33:10.65:ygtK8spx ハードウェアで思い出したがfirefox osが生きていたら rustでアプリ開発みたいな未来もあったんだろうか : デフォルトの名無しさん [] 2017/12/24(日) 13:58:20.60:aCkD6VOe そういやスマホどうなったんだろ。 : デフォルトの名無しさん [sage] 2017/12/24(日) 14:48:39.87 イスラエルハイテク芸人の記事真に受けてる奴いるの? : デフォルトの名無しさん [sage] 2017/12/24(日) 17:23:57.80:kDRDeSwT 社長が詐欺で逮捕された会社の社員よりは信用できる : デフォルトの名無しさん [sage] 2017/12/24(日) 18:16:21.45:dRKEdAK7 コテ付けるかアンチスレ池。次からこのスレワッチョイありでいい?NGしたいんだけど : デフォルトの名無しさん [sage] 2017/12/24(日) 18:19:50.69:ZdJPg4SS 次スレは当然ワッチョイ付きだろ : デフォルトの名無しさん [sage] 2017/12/24(日) 18:29:22.88:dRKEdAK7 とりあえずワッチョイありの建てたわ このスピードじゃ次スレまでまだまだ掛かりそうだし : デフォルトの名無しさん [sage] 2017/12/24(日) 18:30:08.61:dRKEdAK7 あ、ちなみにワッチョイあり/なしの分裂は運営が認めてる(乱立扱いされない)ので : デフォルトの名無しさん [sage] 2017/12/24(日) 18:30:13.42:ZdJPg4SS そして乱立荒らしと化す : デフォルトの名無しさん [sage] 2017/12/24(日) 18:31:04.33:dRKEdAK7 vの数間違えたから一回建てなおした 1514107621使ってくれ : デフォルトの名無しさん [sage] 2017/12/24(日) 20:33:26.59:E1mkQFcM ワッチョイ付けて荒らしがワッチョイコロコロしなかった事例なんて見たこと無いんだが : デフォルトの名無しさん [sage] 2017/12/24(日) 22:59:14.04:F1BONnbf なんだっていいわ。言語の話ができれば。 ttps://blog.rust-lang.org/2017/12/21/rust-in-2017.html 2017の総括が来てるぞ 個人的にはまだLibz Blitzが不十分なのと開発の敷居が下がってないなとは思うが、 チーム的にはおおむね達成されたって認識なのかね? : デフォルトの名無しさん [sage] 2017/12/24(日) 23:10:11.64:ke4WkGne Rust Christmas I gave you my heart : デフォルトの名無しさん [sage] 2017/12/24(日) 23:12:52.22:Yy5Ib13l firefox os載ってるパナソニックのテレビが 最近投げ売りを見るようになってきたから試せるぜ。 : デフォルトの名無しさん [sage] 2017/12/24(日) 23:18:18.33:AgcUAg+9 rustでググるとゲームのrustのほうが出てきた気がしてたがプログラミング言語のrustのほうが出てくるようになった : デフォルトの名無しさん [sage] 2017/12/25(月) 01:15:11.44:amicdpkk 嫌いじゃない : デフォルトの名無しさん [sage] 2017/12/25(月) 21:17:01.81:xKPVoTzN 結局RustはKotlinとかSwiftと比べて何が良いのか 純粋に言語として ライフタイムとかはコストに見合ってるのか : デフォルトの名無しさん [sage] 2017/12/25(月) 21:18:48.87:d0gulbrz 汎用性ならKotlin Rustは特化型 : デフォルトの名無しさん [sage] 2017/12/25(月) 21:19:18.87:d0gulbrz そもそも「安全で高速に低レベルな事をする言語」だからね : デフォルトの名無しさん [sage] 2017/12/25(月) 22:58:45.45:4xHQMB5H enumがtagged unionだから分岐と構造化束縛時の スタック操作ばっかになって素直に書くと遅い。 cursesで描画してもそこそこ遅い。 cならuntagged unionだから想定してないメンバに アクセスしたら落とせばいいからここまで遅くならないよ。 安全な抽象化にそれなりのコストかかってる。 : デフォルトの名無しさん [sage] 2017/12/25(月) 23:19:26.65:/fea/C1E その速度比較に使ったRustとC++のそれぞれのソースコードplz : デフォルトの名無しさん [sage] 2017/12/25(月) 23:31:01.92:BOF70SMI untagged unionで想定してないメンバにアクセスしたときに落とすためにはtag必要では : デフォルトの名無しさん [sage] 2017/12/25(月) 23:34:48.96:TM/+0evy Cのenumを使いたいならbitflagsでやる方が良いかなと今のところ思ってる : デフォルトの名無しさん [sage] 2017/12/26(火) 00:30:52.01:UK4eFYlP 今日日パソコンはとても高速なわけだが Rustでcurses使うと気になるほど遅くなるのか? : デフォルトの名無しさん [sage] 2017/12/26(火) 02:21:08.27:MIW2tV/6 >cならuntagged unionだから想定してないメンバに >アクセスしたら落とせばいいからここまで遅くならないよ。 きちんと落ちるのなら苦労はしてない。 落ちないでスタックぶっ壊しながら突き進むから苦労してるんだろ。 スタック壊されるデメリットに比べればtagged unionのコストなんて安いもの。 : デフォルトの名無しさん [sage] 2017/12/26(火) 02:29:45.01:2mEdN5M0 そもそもrust stableにもunionは入ってるんでお好きに使うがいいやってのと、 「想定してないメンバにアクセスしたら」ってどう判断すんのって疑問が残る タグに相当するものを自作してもいいけど、そこまで気にする程のオーバーヘッドを感じたことが無い : デフォルトの名無しさん [sage] 2017/12/26(火) 03:05:26.84:wnOOkvy2 数百万回まわしてナノ秒単位で測るマイクロベンチマークならともかく、cursesで違いが分かるとか、ありえんわ : デフォルトの名無しさん [sage] 2017/12/26(火) 12:24:50.36:MBQNrtsd 今時のマシンでcurses使うと遅いっていう人間、明らかにニュータイプでは? もしRustで標準入出力が目に見えて遅いって話なら、 単純に標準入出力のロックに無頓着ってだけのオチだと思う : デフォルトの名無しさん [sage] 2017/12/26(火) 15:07:09.73 夢みたいじゃないか! : デフォルトの名無しさん [sage] 2017/12/31(日) 20:32:09.45:Pbe3xhzg @HiraokaTakuya Rust で C++ の non type template arguments使いたい時は、適当に中身無しの struct 作るしかないんかな〜(´・_・`) 午後1:18 · 2017年12月29日 他人のツイートなんだけど僕も気になるから教えて(´・_・`) : デフォルトの名無しさん [] 2018/01/01(月) 03:23:35.09:CPUGDh/w これ? Pre-RFC: Integer Templating - internals - Rust Internals ttps://internals.rust-lang.org/t/pre-rfc-integer-templating/2974 : デフォルトの名無しさん [sage] 2018/01/01(月) 06:07:12.08:eODIGKc2 C++ の template<int N> か。 これが使えれば、 impl<T> Hoge for [T; 0] impl<T> Hoge for [T; 1] impl<T> Hoge for [T; 2] ... みたいなのを impl<T, N: usize> Hoge for [T; N] でまとめられるよね(と良いな) : デフォルトの名無しさん [sage] 2018/01/02(火) 01:05:03.64:tEjF/+vh rustのジェネレータってasync function用のコンテキストスイッチしないまがい物か。 ジェネレータだけだと所有権奪ってキャプチャした値返すしか出来ないから Cloneしないstd::iter::repeatくらいにしか使い道ないな。 ウォームアップしてないjsの倍程度の速度しか出ないけど resume関数は最適化で綺麗になくなるみたい。 : デフォルトの名無しさん [sage] 2018/01/02(火) 01:27:26.59:D11hAiYE ほぼtraitしか無い状態なのにそんな評価できるの? : デフォルトの名無しさん [] 2018/01/02(火) 20:34:21.94:3aikB/VZ 型間のキャスト ttps://rust-lang-ja.github.io/the-rust-programming-language-ja/1.6/book/casting-between-types.html これの数値キャストのとこにリンクされてるissueまだOpenのままだけど大丈夫なんですか? : デフォルトの名無しさん [sage] 2018/01/03(水) 03:23:23.29:9cEaeLyk ターゲットごとに調整が必要だから後回しにされてんのか? : デフォルトの名無しさん [sage] 2018/01/06(土) 15:03:12.41:+G0EWjNB Announcing Rust 1.23 ttps://blog.rust-lang.org/2018/01/04/Rust-1.23.html : デフォルトの名無しさん [] 2018/01/06(土) 20:14:58.33:BPUjGU8x 今回の目玉は何? : デフォルトの名無しさん [sage] 2018/01/06(土) 23:26:46.03:+G0EWjNB 目玉無し : デフォルトの名無しさん [] 2018/01/06(土) 23:35:55.23:iXDfk3dJ コンパイラの最適化の改善くらいかな。 「メモリ使用量を平均で5〜10%くらい削減することに成功した」だそうだ。 : デフォルトの名無しさん [sage] 2018/01/07(日) 00:56:06.77 この言語ってC++より遅くてJavaより速い感じ? : デフォルトの名無しさん [sage] 2018/01/07(日) 07:28:23.02:uw/m3vxc 間違ってはいない。 けどc++とは僅差なのでこんな感じかな。 C++ < Rust <<< Java テキトーに書いたので異論は認める。 : デフォルトの名無しさん [sage] 2018/01/07(日) 08:28:15.81:N4ZmoDnH 下手すりゃc++より速いんちゃう : デフォルトの名無しさん [] 2018/01/07(日) 09:11:44.01:uw/m3vxc 全く同じアルゴリズムならC++のほうが速いはず。 C++のコンパイラはもう成熟してるけど、Rustのコンパイラはまだまだ改善中だから 将来的にはほとんど同じくらいになるんじゃない? まぁなんにせよ、結局はアルゴリズム次第。 : デフォルトの名無しさん [sage] 2018/01/07(日) 10:36:20.02:VPcvS++b Rustに限った話ではないが世の中のアルゴリズムの大半はC/C++前提に作られているのだから C/C++の方が速いのは当たり前。新世代で速くしたければそれにあったアルゴリズムが必要 : デフォルトの名無しさん [sage] 2018/01/07(日) 11:03:31.13:YhE3wbKh トンデモだと思う : デフォルトの名無しさん [sage] 2018/01/07(日) 11:59:29.53:zsxI9Sw+ 「C++がJavaより早い」というのは「大抵は」が抜けているか、「原理的には」が抜けている C++でVMとJITは作成しないなど、 いくつかの条件が整うと C++ より Java が早いというケースも存在する 無制限にコストをかけれるという前提なら Java より C++ のほうが早い ttps://softwareengineering.stackexchange.com/questions/110634/why-would-it-ever-be-possible-for-java-to-be-faster-than-c : デフォルトの名無しさん [sage] 2018/01/07(日) 12:31:49.44:S38kpWyE Cは速いけどC++が速いってのは思い込みだな : デフォルトの名無しさん [sage] 2018/01/07(日) 13:40:28.36:vkdahwds c++は実装依存激しいだろ。 : デフォルトの名無しさん [] 2018/01/07(日) 14:52:58.05:ztEE4sQM なんだそりゃ… : デフォルトの名無しさん [] 2018/01/07(日) 14:53:20.71:ztEE4sQM なんだそりゃ… : デフォルトの名無しさん [sage] 2018/01/07(日) 15:50:38.75 CとC++の速度比 ≒ C++とRustの速度比 みたいな感じ? : デフォルトの名無しさん [sage] 2018/01/07(日) 16:38:03.27:lYFenZIw 単純なCだけ頭一つ抜けてて、C++とRustはvtableやsmart pointer由来の遅さを抱えた同じグループ : デフォルトの名無しさん [sage] 2018/01/07(日) 16:57:20.32 ありがとうございました : デフォルトの名無しさん [] 2018/01/07(日) 18:25:18.16:oRH7Tob1 腕振り回すのが早いからって、仕事も早いと思い込んでるのが未だに居るな。 : デフォルトの名無しさん [sage] 2018/01/07(日) 20:07:26.07:QaVgU45N 検証結果plz 最適化コンパイラがない時代ならともかく今時のコンパイラで有意な差が出るとは思えない : デフォルトの名無しさん [sage] 2018/01/07(日) 20:12:31.97:GuZkQfSu pc初心者? : デフォルトの名無しさん [sage] 2018/01/07(日) 21:31:27.55:sQmpVu5G vtblと比較するならCの関数テーブルだろう C++のスマポも必要なとこしか使わないし、使ったらその分だけ遅くなるのは当然 : デフォルトの名無しさん [sage] 2018/01/07(日) 23:35:47.39:rkol6e+G ttps://benchmarksgame.alioth.debian.org/u64q/rust.html ttps://benchmarksgame.alioth.debian.org/u64q/compare.php?lang=rust&lang2=gpp これでいいか? : デフォルトの名無しさん [sage] 2018/01/08(月) 00:09:18.31:fNfSzvO3 c++もrustもアセンブルコード埋め込めるのだから速度を出そうと思えば出せるのでは : デフォルトの名無しさん [sage] 2018/01/08(月) 00:56:10.81:y4IOANaR 今時、C#みたいなGC付きの言語で3Dゲームが開発できちゃう時代なんだ。 今のPCの性能を鑑みたら、C, C++, Rust の速度差なんてほとんど誤差みたいなもんだろ。 普通は気にするようなもんじゃない。 そんなわずかな差が気になるって言うのなら直にアセンブリでも書いてろよ。 ぶっちぎりで速いぞ。 : デフォルトの名無しさん [sage] 2018/01/08(月) 01:09:23.55:fNfSzvO3 3DゲームってUnityのことか?Unityの内部はC#じゃなくC/C++では : デフォルトの名無しさん [sage] 2018/01/08(月) 02:09:23.80:xRIQXPI+ 有能はコンパイラが上手く最適化できるコードを書く 無能はコンパイラが混乱するコードを書く Cの方が速いとか言う奴は大抵無能 : デフォルトの名無しさん [sage] 2018/01/08(月) 02:29:49.41:+UJAnfcM まあそれ言い出したらそもそもそこまでcpu速度に影響ある部分なんて 少ないけどな。 ガベコレねーからrust速いってやつも スマポないからc速いってやつも 大して変わらん。 : デフォルトの名無しさん [sage] 2018/01/08(月) 02:49:24.32:puck2ipT 将棋ソフトとかチェスソフトは1%でも速くしたいという需要あるんちゃう 実際stockfishをRustで書き直したら速くなったりするのかね : デフォルトの名無しさん [sage] 2018/01/08(月) 03:01:21.87:88cycnja あんまり大きいプログラムじゃないみたいだけど、内部は木構造か うーん : デフォルトの名無しさん [sage] 2018/01/08(月) 05:39:51.66:PZS9kotp それも突き詰めると絶対普段はこんなの書かねーっていうベンチマークのためだけのコードになったりするからなあ は有名な話だけどソース見ると言語によっては酷いもんだぞ : デフォルトの名無しさん [sage] 2018/01/08(月) 16:00:03.99:2tTEytIx rustで書き直すぐらいならC/C++のままでいい : デフォルトの名無しさん [] 2018/01/08(月) 16:42:57.60:MR/7hfVk 既存のC/C++コードを捨ててまで移行する価値のある言語ではないのはたしかだな : デフォルトの名無しさん [sage] 2018/01/08(月) 16:49:10.90:fzq0teyP そもそもRustが便利だと思ってるやついないだろ C++書いたことない奴がC++より安全だの同速だの言ってヨイショする 本当にCやC++書いたことあるならただの制限厳しいだけのゴミだと分かる : デフォルトの名無しさん [sage] 2018/01/08(月) 16:54:23.84:ZvHTaNmI そう思いたいのですね : デフォルトの名無しさん [sage] 2018/01/08(月) 17:52:58.17:G8CneCok ここはアンチスレだからね。 わざわざまともな話題をここでやることはない。 本スレは過疎 : デフォルトの名無しさん [sage] 2018/01/08(月) 18:53:52.23:+UJAnfcM c++ゴミ老害をマウントするために新言語が必要なんだろ。 : デフォルトの名無しさん [] 2018/01/08(月) 21:23:29.25:aKL7Lo8F 速度優先なら vtable作らない smartpointer使わない : デフォルトの名無しさん [sage] 2018/01/08(月) 21:24:35.96:aKL7Lo8F ゲーム開発はできてもゲームエンジン開発はどうなの : デフォルトの名無しさん [sage] 2018/01/08(月) 22:12:41.54:xRIQXPI+ 無能が生ポインタを使うとコンパイラの最適化を阻害して遅くなる : デフォルトの名無しさん [sage] 2018/01/08(月) 22:47:28.33:rvM8YIeZ 横レスだけどCAPCOMのC#自社エンジンはC++でモリモリ書いてあるしC#用VMもC++で独自実装(SlideShareに確か資料があったはず) Unityだって結局ライブラリも開発環境もC++が大部分よね : デフォルトの名無しさん [sage] 2018/01/08(月) 22:52:48.05:cPU/Gv3T カプコンのあれはゲーム用に超最適化されたGC詰んでるから… : デフォルトの名無しさん [] 2018/01/08(月) 23:20:56.60:y4IOANaR , , そりゃぁ、ゲームエンジンは速度が求められるからC#じゃ力不足だろうな。 そこまで持ち出されるとグーの音も出ない。 だから「『普通は』気にするようなものじゃない」って書いた。 ゲーム作ろうとするのにゲームエンジンから自作しようとする奴なんて『普通は』いないだろ? そして、仮にゲームエンジンの開発に使うんだったとしても、 C#みたいなGC付きの言語ならともかく、C, C++, Rustの差は誤差みたいなものでしょ。 なぜなら、C++とRustの差が気になるっていうのなら、当然、C++とCとの差だって気になるはずだよな? だったらゲームエンジンの開発にC++じゃなくてCを使ってるはずだろ? でも実際にはCじゃなくてC++が使われている。 ということはゲームエンジンみたいにシビアな領域でもCとC++の差はさほど気にされていないってことになる。 ならやっぱり、C, C++, Rustの差なんて気にするようなものじゃないと言いたかった。 : デフォルトの名無しさん [] 2018/01/08(月) 23:59:18.26:y4IOANaR , Rustは実装にもよるけど vtable はほとんど使わないはずだよ。 「ジェネリックとトレイト境界」を使えば引数に関しては静的ディスパッチが可能。 戻り値のほうは「ジェネリックとトレイト境界」じゃどうにもできないけど、 こっちはTagged Union 使えば大体は何とかなる。 現状、クロージャを返す場合はトレイトオブジェクトを使わざるを得ないけど、 クロージャを返すことって稀だし、そこまで気にするようなことじゃないと思ってる。 Cにはそもそもクロージャ自体が存在しないわけだし。C++でもクロージャは一般的じゃない。 smart pointer に関しても unique_ptr なら遅くはならない。(ほとんど誤差みたいなもの) だって unique_ptr は参照カウンタ使ってないし、Rallの仕組みを使って構造体(スタック)に ポインタを持ってデストラクタで解放を行ってるだけだから、その程度で遅くなるわけがない。 そして、Rustはデフォルトが C++の unique_ptr と同じだからやはり遅くはならないはず。 遅くなるのは内部で参照カウンタを使ってるshared_ptrとweek_ptrの2つ。 Rustの場合は参照カウンタは Rc or Arc として標準ライブラリに用意されてる。 まあ、Rustで Rc or Arc を全く使わずに作るってのはちょっと現実的じゃないけど。 まぁ、自分もそれほど詳しいわけじゃないけど、 vtableとsmart pointer はRustが遅い理由にはならないんじゃないかな。 RustがC, C++ と比べて少し遅い理由は他にあると思うよ。 個人的にはまだコンパイラが成熟してないってのが主な理由だと思ってるけど。 結構いっぱい書いたけど、やっぱり結論としてはC, C++, Rust の速度差は普通に使う分には気にすようなものじゃないと思う。 : デフォルトの名無しさん [] 2018/01/09(火) 00:07:21.22:vsbSHK2s 訂正 week_ptr × weak_ptr ○ : デフォルトの名無しさん [sage] 2018/01/09(火) 00:16:14.62:BgSfBmJG 確かに : デフォルトの名無しさん [sage] 2018/01/09(火) 08:02:08.21:dghT81NU HashTableがデフォルトで安全側に倒してSipHash使ってるのも大きい気はする ripgrepやfont-rsなど既存の実装よりも圧倒的に高速なrust実装もあるし、言語自体の差と言うよりも、書き方の差だと思う constexpr周りはDやC++の方が充実しているけど、build.rsなどで代替できなくもないと思う : デフォルトの名無しさん [sage] 2018/01/09(火) 09:33:53.22:4EiQrQ8s Unityが出てからC#でゲーム書く人が増えたわけだし、どこかの企業が気合い入れてRustサポートしたエンジン作れば使ってみる人も増えるやろ : デフォルトの名無しさん [sage] 2018/01/09(火) 10:25:16.50:vtbi2ENx 速さの差を気にする必要はないとかいう奴って 普段どんなところでコード書いてるプログラマなんだ? プログラマなら一番速い選択するべきだろ : デフォルトの名無しさん [sage] 2018/01/09(火) 10:36:54.87:pRblgKD+ かけれるコストが一定という制約で一番速くなる言語を選ぶと結果は変わるんだよ : デフォルトの名無しさん [sage] 2018/01/09(火) 10:59:57.42:e9VuKocG 「速さ」にも何種類かあるのは理解してる? 最近は開発スピード優先だろ。 : デフォルトの名無しさん [] 2018/01/09(火) 12:31:14.96:hZWQBtrg 開発スピード優先とは言っても アルゴリズムや計算量知らないで とんでもない糞コード書く香具師はいる : デフォルトの名無しさん [sage] 2018/01/09(火) 13:00:20.99:CtLIzYrP そりゃ論外だ。 開発言語の問題じゃない。開発手法は少しは関係あるか。 : デフォルトの名無しさん [sage] 2018/01/09(火) 13:08:01.94:hgVWuJUP Rustでプログラマが意識してないのに走るランタイム処理って何かあるかな? 起動時になんか処理してる? あとは、メモリ解放時に意外とjemallocが重いとか? : デフォルトの名無しさん [sage] 2018/01/09(火) 14:20:37.33:vtbi2ENx かけれるコストを減らすのがプログラマの仕事だろうに…… 処理の肝の関数をアセンブリで書くのに一週間かけるのか? : デフォルトの名無しさん [sage] 2018/01/09(火) 15:06:26.69:pRblgKD+ > プログラマなら一番速い選択するべきだろ > かけれるコストを減らすのがプログラマの仕事だろうに…… 一番速い言語を選択した上でかけれるコストを減らすという主張のようだが、 コストの上限って大抵あるのよ? 上限ないならプログラム全部アセンブリで書いた上で お好きなようにかけれるコストを減らしてください > 処理の肝の関数をアセンブリで書くのに一週間かけるのか? 元になる関数の有無、関数の規模、ボトルネックとしての割合、 複雑さ、アーキテクチャ、既存のテストコードの有無、 作業する人数、スキルと単価の前提すらなく作業時間だけ提示されても 必要なら一週間かけますとしか言えないよね? : デフォルトの名無しさん [sage] 2018/01/09(火) 15:08:41.92:Im+qxt+8 > 処理の肝の関数をアセンブリで書くのに一週間かけるのか? 必要ならやるけど ふつうは、アセンブリで書くというという結論に至る前に 処理の見直しで数ヶ月試行錯誤するかな : デフォルトの名無しさん [sage] 2018/01/09(火) 15:46:18.74:vtbi2ENx 本当に必要なら 関数のアセンブリ化くらい一日でやるのがプログラマだろって話な? : デフォルトの名無しさん [sage] 2018/01/09(火) 18:36:32.15:pRblgKD+ 処理の肝の関数が一日程度のアセンブリの最適化ですむ程度なら、 絶対に手を付けないな コードの保守性を考えるとむしろ害悪 ドライバのコードを一週間かけて最適化して劇的に早くしたことがあるが、 関数に対する暗黙の前提とかを見つけて、 ひらめきでニーモニックを最適化していく作業 一日程度でやることじゃない : デフォルトの名無しさん [sage] 2018/01/09(火) 20:29:59.87:6UEtXwLz 今時の高性能(で複雑な)なプロセッサの最適化はコンパイラ>人間 : デフォルトの名無しさん [sage] 2018/01/09(火) 23:11:43.33:0nJMugwX C++からRust移植で高速化!? ttps://twitter.com/tanakh/status/950659594379968513 : デフォルトの名無しさん [sage] 2018/01/10(水) 00:25:27.71:GZ3v7wml 例の会社の方ですね : デフォルトの名無しさん [sage] 2018/01/10(水) 01:04:10.48:sDNuvOTB stockfishもrustで書き直しましょう! : デフォルトの名無しさん [sage] 2018/01/10(水) 05:48:28.54:zJE5XuIr 移植で高速化する案件ってのは、大概同じ言語で書き直しても高速化するからなあ 要するに作り直しに際して全体を見直すという行為が一番効く : デフォルトの名無しさん [sage] 2018/01/10(水) 11:54:40.05:kHYccep6 詐欺会社の社員の言うことなんて信じるからRustなんかに飛び付くんやろなあ : デフォルトの名無しさん [sage] 2018/01/10(水) 12:43:57.38:6PCYvjwP 気が狂ったようなレスだな : デフォルトの名無しさん [sage] 2018/01/10(水) 15:45:01.02:GLuGS5zO お前それインタプリタ言語からコンパイル言語への移植でも同じこと言えんの? : デフォルトの名無しさん [sage] 2018/01/10(水) 15:47:29.13:GLuGS5zO GoogleのAIエンジン、別にRustで書けとは言わんがせめてGoにしろやと常々思う 演算量多いんだよバーロー : デフォルトの名無しさん [sage] 2018/01/10(水) 16:22:06.54:Dg+5gWi5 GoogleのサーバサイドではPythonからGoへ置き換わりつつあるみたいだけど、そっちも置き換わるのか : デフォルトの名無しさん [sage] 2018/01/10(水) 18:47:50.56:GLuGS5zO スレチだけど、Goはマルチコアでの並列処理に適した言語だからAIエンジンをサーバで動かすなら置き換えて欲しいよね しかしまぁ、C/C++からRustの移植で早くなるのは、オブジェクトの取り回しが無理やり矯正されることによる恩恵かねぇ mutexのlock/unlockによるブロッキングが早々起きないから待ち合わせしなくていい所の待ち合わせは矯正されてそう プログラマが意識して作るならC/C++のままで良いけど、人がやるより機械がやってくれるならそれに越したことない : デフォルトの名無しさん [sage] 2018/01/10(水) 20:16:34.04:85p1Kkix tensorflowの事言ってるなら、pythonで書かれてなかったら誰も使わないよ : デフォルトの名無しさん [sage] 2018/01/10(水) 22:46:46.16:GLuGS5zO pythonは利用者==開発者での試験開発には非常に好ましい言語だけど、利用者!=開発者では性能悪くてver.2,3で言語仕様互換性のないRust未満のクソ言語だよ? AIエンジンを実用ツールとして見ない日曜プログラマはtensorflow(python2 lib)をホクホクと使うけど、実用ツールとして見たらtensorflowは誰も望んでは使わないよ 同じように言語の適材適所を考えないプログラマはRustの適所を考えることもせず、アンチ活動に走るよね コンパイル通るコード書くの大変だし、ローポインタ操作は好まれないし、日本語書籍少ないしで決して便利な言語じゃないけどRustもハマれば良い言語よな : デフォルトの名無しさん [] 2018/01/10(水) 22:54:00.21:aQix+RRX アンチの存在はともかく アンチと戦うのが好きな人が多いのが難点ですね : デフォルトの名無しさん [sage] 2018/01/11(木) 01:05:22.99:wQj3L0Ay たなこふアンチはどっか逝って : デフォルトの名無しさん [sage] 2018/01/11(木) 03:40:32.06:iyu0SjqV 演算グラフを構築してGPUに投げる処理をrustで書けば速くなると思ってる低脳っぷりヤバイわ GPUの100倍も遅いCPUでループ回るのが速いとかマジでどうでも良いからw : デフォルトの名無しさん [sage] 2018/01/11(木) 04:02:35.22:QmzCPTgd 今rustで業務アプリ開発してるけど、マルチスレッドでのデータ競合をコンパイル時にチェックしてくれるのが特にいい感じだわ ただ、今まで気楽に相互参照使ってた所とかrust流の書き方しないとキツイのが結構あるな : デフォルトの名無しさん [sage] 2018/01/11(木) 11:23:35.66:s4xLMRqm まあ行列演算のコアなところは今でもアセンブラだったりするわな。 一つの言語で全てのレイヤーを賄おうとするのがそもそも馬鹿すぎる発想。 : デフォルトの名無しさん [sage] 2018/01/11(木) 11:40:16.18:AZiVul63 挙げてるデメリット全部致命的で、 全く嵌まれば強いように見えないな : デフォルトの名無しさん [] 2018/01/11(木) 13:36:38.57:c+w22aA0 それってpythonについて文句言ってんの?それともRust? それとも両方? : デフォルトの名無しさん [sage] 2018/01/11(木) 19:09:36.95:iS+zA8r5 日曜プログラマとかレッテル貼ってdisってみたけど、 実は自分の方がクソど素人だと>>635にバラされた気分はどう? 流行りだからってドカタが無理してAIとか口出さない方が良かったね : デフォルトの名無しさん [sage] 2018/01/11(木) 19:11:41.94:EF30eMeR Rust Pythonについては同意見 : デフォルトの名無しさん [sage] 2018/01/11(木) 23:02:05.67:b1xHFrgv 道具でしかないプログラミング言語ごときに何でそう愛憎うずまくレスが沸くんだぜ : デフォルトの名無しさん [sage] 2018/01/12(金) 00:01:22.91:v4YvA7k7 やっぱりマイナー負け組言語マニアは余裕がないから 簡単にムキになっちゃうんじゃね : デフォルトの名無しさん [sage] 2018/01/12(金) 00:16:17.30:8Bbkgawk Rustが使える有能な言語だと思っている?お前がそう思うんならそうなんだろう お前ん中では Rustが使えない糞な言語だと思っている?お前がそう思うんならそうなんだろう お前ん中では お前がそう思うんならそうなんだろう お前ん中では : デフォルトの名無しさん [sage] 2018/01/12(金) 10:24:05.79:KQEkfNlJ そういうお前のなかではどうなんだ? : デフォルトの名無しさん [sage] 2018/01/12(金) 15:03:45.10:yzgw2U0r 本当は電気ドリル使った方が楽なのに頑なにスコップ使わせたり、 逆にブルドーザーでやれというようなアホな現場があるのが ITの世界だったりする。 まあそんなことが続けばその道具を嫌いになるのはわからんでもない。 : デフォルトの名無しさん [sage] 2018/01/12(金) 16:29:33.21:/01TbNc2 わかる そしてスコップやブルドーザーでも時間や犠牲を払いつつもやれてしまうのがITの世界 : デフォルトの名無しさん [sage] 2018/01/12(金) 19:30:59.16:RuIpixvC とりあえず、tensorflowのコードを見てないんだなって思った GPUに投げる演算処理以外のステップ処理とか関数コールとか動的型変数の取り扱いとか インタプリタ言語がコンパイル言語より遅い理由に挙げられるデメリットをガン無視かよぉ IteratorやOption, Resultとか、ハマればC/C++で何行もかけて書いてた所が1行に収まって 短くて可読性高くて性能良いコードになるのはメリットだと思うんだけどなぁ あとは、makeだのvalgrindだのgoogletestだの色々な3rd party toolを使わなくてもcargoで完結するのホント助かる : デフォルトの名無しさん [sage] 2018/01/12(金) 20:43:22.05:yzgw2U0r 3rdパーティツールを使ってないんじゃなくて、利用が簡易ってことだけどな。 そういう怪しげなこと書くくらいならモチっと使い方なり書いた方が普及には繋がると思うよ。 ttps://qiita.com/kubo39/items/cb84cd0ee89d257ce11e : デフォルトの名無しさん [sage] 2018/01/12(金) 20:52:57.80:/u+itip5 tensorflowはボトルネックになりそうな所はC++で書かれてるよ 想像でテキトーな事を書くなよ : デフォルトの名無しさん [sage] 2018/01/12(金) 21:01:05.95:/u+itip5 Pythonが科学技術分野で好まれてるのは numpyやscipyのお陰だから言語に文句つけても意味ないし、 Rustで書くよりnumpyで行列演算した方が速いから 速度面でも移行するメリットがない : デフォルトの名無しさん [sage] 2018/01/12(金) 21:54:28.61:kjmG24Y8 ITに限らないような。低能率な環境や命令を棚に上げて生産性向上などと吠える製造業も多いぞ : デフォルトの名無しさん [] 2018/01/13(土) 09:02:27.08:PRFVc3V3 未だに設計にEXCEL使ってる現場とか多いしね。 自称IT屋がIT使ってない。 : デフォルトの名無しさん [sage] 2018/01/13(土) 19:22:01.99:MW2t1rKM excelがITではないとは暴言では : デフォルトの名無しさん [sage] 2018/01/13(土) 19:34:17.26:aU8wc9zz エクセルは芸術 : デフォルトの名無しさん [] 2018/01/13(土) 21:22:56.33:ZmH3DZ0F ああ精確には「古いIT」だな。 客には「Excelで台帳管理しないでDBとWebアプリ使いましょう」とか提案する癖に、開発工程ではExcel使ってるという非効率さ。 : デフォルトの名無しさん [sage] 2018/01/13(土) 21:38:44.30:V4m1sF41 Excelが悪いとは思わないけど処理の規模が一線を越えてくるとプログラムを書いた方が処理効率や保守性の面で有利になる 関数山盛りの激重スパゲッティワークシートを運用しているところは少なからずあるのでは あとExcelに表計算ソフト以上の仕事をさせているところも結構あるな : デフォルトの名無しさん [sage] 2018/01/13(土) 21:43:49.20:aU8wc9zz 経済学の論文でエクセル使ってて、しかし普通にバグってて問題になってたことがあったな。 : デフォルトの名無しさん [sage] 2018/01/14(日) 00:19:53.66:Qz3+ZXNT rustスレだと思っていたがexcelスレだった : デフォルトの名無しさん [sage] 2018/01/14(日) 01:19:41.63:I9Kg/0Pm 規模がでかくなるとすぐ破綻するが 使い捨て作業でつかうぶんには超優秀 なにもまちがってない : デフォルトの名無しさん [sage] 2018/01/14(日) 03:40:45.43:ppap/O0M まあ実際はエクセルとバージョン管理使ってりゃそれで十分なケースは多いけどね。 : デフォルトの名無しさん [sage] 2018/01/14(日) 09:51:38.95:5kx72Xik とある公的研究施設に嘱託で行ってたときの実話なんだが ・それエクセルでマクロ書いたら多少楽になるんじゃね?って提案 →わけのわからんことに時間使わないで今すぐ手を動かして紙で管理してね ・コピペ満載糞コード見せられ「なぜこれ関数書かないんですか?」とだけ質問 →関数使うと見難くなる、保守しにくくなる、関数は書かないでね なお、必死で食い下がって関数書くことだけは許してもらった模様 公務員なんてのはPCの前に座って屁こいてるだけで時間が金になるから みんなこんなもんよ 時間を惜しむと言う発想が無いか、少なくとも民間とは違う : デフォルトの名無しさん [sage] 2018/01/14(日) 11:24:43.60:pZVQT//+ rustなんて使ってるやつも同じメンタルだな 成果物出さないでコンパイラにエラーメッセージ出させてるだけで時間が金になるようなやつ 物作らなくていいなら理想の言語だわな : デフォルトの名無しさん [sage] 2018/01/14(日) 11:37:01.71:BkqToWZD けんきゅうしせつのひとが嘱託よりすべてにおいて優れているのは自然の摂理なので 本当にわけのわからない提案をしたり 既存コードに手を突っ込んで意味不明なリファクタをしようとしたりしたんだろう マクロ化したり関数作ったほうが本当に能率いいなら 許可なぞとらずに自分のところだけそれでさっさとやっちゃう うまくいくようならあとから提案する : デフォルトの名無しさん [sage] 2018/01/14(日) 11:41:16.95:pZVQT//+ だーれがその「自分で勝手にやったところ」の面倒を見てくれるんだ? 嘱託ごときが定年まで面倒見れるわけもなかろうに 勝手にブラックボックス作るのは何様? : デフォルトの名無しさん [sage] 2018/01/14(日) 11:46:14.88:BkqToWZD 自分の責任範囲内の話だし 特にブラックボックスなところはないが なにがきにいらんのだ : デフォルトの名無しさん [sage] 2018/01/14(日) 11:48:39.30:pZVQT//+ 嘱託に設計を勝手に変えられる「責任」が存在するならそれは嘱託ではなくね? 自分が勝手にやった、自分一人しかわからないものは十分ブラックボックスだ : デフォルトの名無しさん [sage] 2018/01/14(日) 11:57:24.04:BkqToWZD コーディングルールに関数作らないことって明記されてなかったら べつにいいんじゃないか : デフォルトの名無しさん [sage] 2018/01/14(日) 12:26:12.32:ppap/O0M いや関数ダメとか普通にどうかしてんだろ。。 これでブラックボックス化するからダメ言うんだったら何もできんわ。 : デフォルトの名無しさん [] 2018/01/14(日) 13:02:12.25:8svLfVJD そもそもプログラミングってきちんと正しく ブラックボックス化(カプセル化)しましょうってものだろうに。。。 : デフォルトの名無しさん [sage] 2018/01/14(日) 13:39:57.15:pZVQT//+ カプセル化はAPIと内部状態の分離であって 中のコードや仕様を隠蔽するのが目的じゃないんだが : デフォルトの名無しさん [sage] 2018/01/14(日) 13:57:59.71:jzH2L7UL ID:pZVQT//+ は何かズレてんな。だから必死なのか。 : デフォルトの名無しさん [sage] 2018/01/14(日) 14:43:57.62:b6ZBN6zi Rustに限らないが、新しい言語ごり押しする奴や コーディング規約ガン無視してコード書いたりする奴は、 結局そいつしかメンテできない領域を産み出すだけで、全く生産性に寄与しない ってことが言いたいだけだぞ : デフォルトの名無しさん [] 2018/01/14(日) 14:45:29.84:8svLfVJD その「APIと内部状態の分離」をなぜ行いたいのかきちんと考えたことはあるのか? 車を運転するのに車の仕組みを知らなくても良いのと同じように、 プログラム(ソフトウェア)を使うのにそのプログラムの仕組みを知らなくても済むようにするため。 さらに言うと、プログラマが他人が書いたAPIを使うのに、そのアルゴリズムを知らなくても済むようにするためだ。 結局のところ、カプセル化の目的は「きちんと正しく」ブラックボックス化を行うことで 利用者側が内部の仕組みを知らなくても使い方を知るだけで済むようにすることだ。 「APIと内部状態の分離」を行うのはそのための手段として最も有用なものの1つというだけに過ぎない。 何の目的もなく「APIと内部状態の分離」を行えば、それは「中のコードや仕様を隠蔽する」のと大して変わらないよ。 もう少し本質をしっかりと考えよう。 君の言ってること自体は必ずしも間違っているわけではないし、言わんとしていることも分からんではないが、 なんというか、、、底が浅いと感じてしまう。 : デフォルトの名無しさん [] 2018/01/14(日) 14:56:16.89:8svLfVJD 一応補足。 かといってカプセル化した中身は汚くてもいいと言ってるわけじゃないよ。 大多数の人間はカプセル化した中のコードを読む必要性はないけど、 プログラムにバグがないことは絶対に保証できないのだし、 パフォーマンスの改善やらその他いろいろな理由で、 一部の他人は必ず中身のコードを読むことになるからね。 : デフォルトの名無しさん [sage] 2018/01/14(日) 14:56:20.26:ptHdDqnU 勝手にブラックボックスを作るべきではない ブラックボックスなどないではないか プログラミングとはそういうものだ への反論としてはわかるがはなんかずれてると思うがな。 : デフォルトの名無しさん [] 2018/01/14(日) 15:03:52.23:8svLfVJD 「そもそも論」の話をしたからな。 ずれてるというか議論のすり替えが起こってるな。 悪かった。申し訳ない。 : デフォルトの名無しさん [sage] 2018/01/14(日) 17:34:15.38:BkqToWZD どうなんだろう 人と違うことやるときは 特に何も決まってなくても提案として言ったほうがいいの? : デフォルトの名無しさん [sage] 2018/01/14(日) 19:43:43.81:5kx72Xik rustに関係ない話持ち込んじゃってゴメンね… 「関数書くな」って真顔で言われたときのショックを伝えたかったの Cから入った人間だから「プログラムを書く≒関数を書く」 だとどこか思い込んでたようなとこがあったのかなぁ 軽くパニックになったわ 関数書かないで何を書くんだろう…って 関数を書かないレベルの人に言葉を尽くすのは大変だったYO : デフォルトの名無しさん [sage] 2018/01/15(月) 01:12:06.90:TeZ6A4z4 昔俺が入ったプロジェクトはJavaだったけど、1クラス1スタティックメソッドのみっていう縛りがあったよ : デフォルトの名無しさん [sage] 2018/01/15(月) 10:25:31.75:C2H3bXQJ 嘱託の契約次第だろ。 まあ、無駄な時間を使わされるようだったら契約違反を盾に交渉するのは正しい。契約外だったら少なくとも追加費用を要求しないとな。 : デフォルトの名無しさん [sage] 2018/01/15(月) 12:02:33.62:Sawl3Tst 嘱託の人間に「こっちの方がいいから」って理由で そいつにしかわからないプログラム書かれた側から言わせてもらうとまじでやめろ お前がどんなにクソだと思おうと言われたようにやれ 嘱託のお前にとっては書いたらおさらばでいいんだろうが、こっちはそれを半永久的にメンテするんだぞ こっちの形式指定はメンテするためにこっちが必要な条件なんだ : デフォルトの名無しさん [sage] 2018/01/15(月) 12:05:18.28:Sawl3Tst だから「新しい言語のRust使います」だの「ナウでヤングなライブラリ使います」だの「イケてるツールのwebpack使います」だのは お前がお前のために書くプログラムでやれ 嘱託先に納品する物で書くな。それはお前の物ではない : デフォルトの名無しさん [sage] 2018/01/15(月) 12:09:10.97:Sawl3Tst 関数切るなって指示も、メンテナンス性考えたら自然とそうなるところもあるだろう 例えばコード上あっちこっち飛ばれたら追えなくなるメンテナもいるんだ そういう人にもメンテナンス業務させるためにそういう指定になるのは自然なこと さすがにうちではないけども、そんな奴を抱えてるSIer上流も当然あるだろう : デフォルトの名無しさん [sage] 2018/01/15(月) 12:11:40.00:9C6ITO5u 人生楽しくなさそうだね : デフォルトの名無しさん [sage] 2018/01/15(月) 12:31:52.75:Cin8FKvr 逆にどんどん使ってくれというところもあるし場所によるとしか どちらのケースが多いかは知らない : デフォルトの名無しさん [] 2018/01/15(月) 13:32:29.94:w3dU/zjB , , まぁ、正しいこと言ってるとは思うよ。 納品物に使う言語とかを独断(個人の趣味)で決める奴は確かにバカだと思う。 でも、関数使うんじゃないって強制する側も大概だからな。 従うのが社会的に正しいってだけで、情報工学的には明らかにおかしいこともまた事実。 それと、全部従っておけばいいってのもどうかと思う。 おかしいと思うのなら時間をかけて説得するのも一つの手。 話が極端すぎるんだよ。 : デフォルトの名無しさん [sage] 2018/01/15(月) 13:55:34.30:plpGsHa9 人間、数回の経験ですべてがそうであると錯覚しやすいからねー 特に失敗は記憶に残りやすい(将来に活かせるとは言ってない) : デフォルトの名無しさん [] 2018/01/15(月) 14:29:56.48:w3dU/zjB ところで全く話変わるんだけど。 最近Rustの勉強をしてるんだけど、まだ慣れないし、C++もあまりやってこなかったので、 俺のバカな頭じゃ理解できないことがいっぱいあるから誰か教えて。 質問1 Rustってimmutable参照は複数持てるけど、mutable参照は1つしか持てない決まりになってるよね。 それってたぶんマルチスレッドのことを考えてそうなってるんだよね?(この時点ですでに勘違いしてる?) けどRustではSyncトレイトとSendトレイトを実装してない限り、スレッド間で変数の受け渡しできないんだよね? これって逆に言えばSyncとSendを実装してない場合はシングルスレッドなんだからmutable参照が複数あっても問題ないんじゃないの? なんでマルチスレッドを全く使わないコードを書いてる時でもmutable参照は1つだけしか使えないの? SyncトレイトとSendトレイトについてなんか勘違いしてる? 質問2 Rustで木構造やグラフ構造を定義する時に循環参照(子が親の参照を持ちたいとか)する時って、たぶんRcとWeakを使うことになるよね? そして木構造を可変にしたいときはさらにRc<RefCell<T>>って形になるよね? このRefCell使うとボローチェッカの制約をコンパイルエラーじゃなくて実行時にパニックするように変わるんだよね? こうするしかないのはRc<RefCell<T>>使わずに木構造を作ろうとして執行錯誤したけど無理だったからそうするしかないんだなと思って納得したんだけど、 RefCell使っちゃうとボローチェッカが効かなくなるからせっかくRustを使ってるメリットが無くなったような気がしてくるんだよね。 それでもRustを使うメリットって何? RefCell使ってるとこ以外はボローチェッカが効くんだからunsafeコードと同じようにラッパーで包んでやれば上位層に悪影響は出ないよねってこと? それともC++とかで同じように木構造を作ると、Rustだと単純にパニックするだけだけど、C++だとデバッグがメチャクチャ困難なバグになったりするの? たとえRefCellを使っていたとしてもRustを使うメリットはしっかりあるんだって思える明確な理由を誰か教えて。 この言語やってるともしかして俺ってすっげーバカなの?って不安になってくる。 長文すいませんが、誰か教えてください。 : デフォルトの名無しさん [sage] 2018/01/15(月) 14:49:21.64:RpZewdhM Rustなんて使った時点で騙されてる その辺は言語設計が破綻してる証拠 悪いこと言わんからC++きちんと勉強してRustは忘れよう : デフォルトの名無しさん [] 2018/01/15(月) 15:28:44.95:w3dU/zjB 君ははた迷惑な例のアンチかな? 破綻している証拠とやらをその辺はとか適当な言葉で誤魔化してる時点で説得力がないよ。 てか、君には聞いていない。君以外に聞いてるんだ。 : デフォルトの名無しさん [sage] 2018/01/15(月) 16:35:55.57:tRnPToa/ 木構造にRcは要らんだろ 各ノードは直接の親にしか所有されないんだから : デフォルトの名無しさん [sage] 2018/01/15(月) 17:21:29.47:pZIK1LNL 質問1について分かりやすいのがforループだな あるベクタをforループ中に、forの対象にしてるベクタそのものにpushするみたいな黒魔術操作を禁止するために forループを回してる間は回す対象の配列にイミュータブル参照を作ってる状態にしてコンパイラにチェックさせる : デフォルトの名無しさん [sage] 2018/01/15(月) 17:44:57.62:prlexpko 質問1がそうなっている理由は、以下のようなケースで解放済みのVecにアクセスしてしまうことを防ぐというのもある let mut foo = Some(vec![]); let foo_mut = &mut foo; let foo_ref = foo.as_ref().unwrap(); foo_mut = None; println!("{:?}", foo_ref); // drop 済みのVecへのアクセス : デフォルトの名無しさん [sage] 2018/01/15(月) 19:10:45.82:pZIK1LNL 重箱の隅だが四行目は *foo_mut = None だな : デフォルトの名無しさん [] 2018/01/15(月) 20:48:46.10:w3dU/zjB , なるほど。mutable参照が1つしか取れない理由はマルチスレッド以外にも理由があったのか。 単純なコードだけど実際に示されないと気が付けないな。(少なくとも俺は) やっぱりGC無しの言語はメモリ管理が難しいな。 そして、それをコンパイラがはじいてくれるのはやっぱり有難い。 納得のいく答えが得られた。教えてくれてありがとう。 それは木構造でも親から子を辿るだけで済む場合に限定されない?子から親を辿りたくなった場合だと無理じゃない? 子は複数いるんだからそれぞれの子が全て親のmutable参照を持つことはできないよね。 だって、mutable参照は1つしか作れないんだから。 そうするとRcとWeakとRefCellを使わざるを得なくなるよね?ならない?使わなくても済む方法があるの? ちなみにRcじゃなくてArenaっていう仕組みを使うって方法ならどっかのブログで見たんだけど、 その方法だと動的に追加していくことは出来るけど、動的に削除を行うことは出来ないよね。 例えばJavaScriptのDomツリーとかはparentNodeで子から親のNodeを辿れるようになってるし、 appendChildとかremoveChildとかでNodeを動的に追加したり削除したりももちろん出来るよね。 それと同じようなことをRustでもしたかったらRcとWeakとRefCellを使うしかないんじゃないかと思ってるんだけど。 : デフォルトの名無しさん [sage] 2018/01/15(月) 20:53:28.00:Cin8FKvr 双方向参照する場合はそう RefCell使わなければならないケースでrustの方がうれしいのは、 実行時にはなってしまうが&mutのエイリアスがチェックされることかな C++だと領域破壊してもそれらしく動いてしまうとかあり得てバグの発見が遅れる : デフォルトの名無しさん [sage] 2018/01/16(火) 05:17:55.44:4jams3dQ Rustで木を作ったぞ! ttps://play.rust-lang.org/?gist=dc4c67944190cb7ab83b2e25e4fdd4e2&version=stable : デフォルトの名無しさん [sage] 2018/01/16(火) 12:11:08.60:JwS671kg ttps://news.mynavi.jp/article/20180110-568199/ モジラ工作員ざまあ!!!wwwww いやー一年は工作でごまかせたかもしれないがさすがにメッキが剥げてきたね! これが現実!! 騙されてるやつはまだ間に合うぞ! : デフォルトの名無しさん [sage] 2018/01/16(火) 12:21:19.07:Tvp4qB7j …… ttps://qiita.com/kmizu/items/b07f1dcad63f104248c5 : デフォルトの名無しさん [sage] 2018/01/16(火) 13:02:13.48:JwS671kg どや顔で貼ったんだろうけど 記事内でリンクあるランキングでのRustの位置wwwwwwwwwwww Rustのゴミさの補強にしかなってないwwwwww : デフォルトの名無しさん [sage] 2018/01/16(火) 13:03:09.51:InRpqwJl そいつはTIOBE IndexでScalaの順位が低いから 参考にならないの事にしたいだけのScala大好きマンだから 話半分以下で聞いとけ : デフォルトの名無しさん [] 2018/01/16(火) 13:18:52.31:4ikneXPL そもそも、みんなが使ってる言語だから良い言語みたいな理論を持ち出せば、 PHPをとても良い言語だと認識しければならなくなるんだが。 その辺をはどう考えてるんだ?たぶん何も考えてないんだろうけど。 それとも、もしかしてPHP最高!とか思ってる奴だったか。 : デフォルトの名無しさん [sage] 2018/01/16(火) 13:31:11.79:JwS671kg Rustは誰も見向きもしないクソ言語未満っていってるだけで みんなが使ってる言語は良い言語とは一言もいってないけど? : デフォルトの名無しさん [] 2018/01/16(火) 13:37:29.94:4ikneXPL だれも見向きもしない言語ってのはつまり人気のない言語のことだろ。 人気のない言語はクソ言語ってことにすると、逆説的に、 人気のある言語は良い言語になっちゃうよね。 : デフォルトの名無しさん [sage] 2018/01/16(火) 13:39:54.74:JwS671kg 論理学できない人? 見向きもされないのは悪い言語 が真でも 見向きされる言語は良い言語 は真じゃないよ? 論理学できないからRustなんてもてはやすんだろうけど : デフォルトの名無しさん [sage] 2018/01/16(火) 13:50:01.38:0jSYVjYj その理屈は論理学として正しいがそれを認めると 順位表では何が良い言語か一生懸命みてもわからんから意味なさそう : デフォルトの名無しさん [] 2018/01/16(火) 14:05:58.36:4ikneXPL それは悪かった。 どうせ君は物事を1か0でしか考えられない人間だと思ってたから、 そういう思考回路の人間だと思って会話を進めようとしてしまった。 じゃあ、別の方向から突かせてもらうけど、 関数型言語って最近(最近というほどでもないか?)の流行りじゃん? でも、関数型言語の祖先ってLispとか言われてたりするよね。 で、そのLispはかなり昔から存在したわけだよね。 何で昔は一部の物好きだけが使ってて他は見向きもしなかったのに、 今更になって認められていろんな言語にラムダ式とかが採用されたの? 見向きもされない言語はクソ言語のはずなのになんで? (ちなみにこの理論は反論できる余地があります) : デフォルトの名無しさん [sage] 2018/01/16(火) 14:40:03.83:JwS671kg Lispが関数型言語の祖先かと言われると副作用だらけだし違和感しかないな 別に最近の言語のラムダ式はラムダ計算を構文に持ち込んだだけで、LispのS式まわりの成果を持ち込んだわけでもなかろうに どちらかというとHaskellとかML系列の成果の方が主だろう RustがLisp的な立ち位置になると言いたいんだろうが、言語のお粗末な出来から言ってもそれはない : デフォルトの名無しさん [] 2018/01/16(火) 14:45:36.44:4ikneXPL 別にLispに限定した話じゃないよ。 関数型言語って昔からあるよね。でも当時は誰も見向きもしなかったよね。 見向きもされない言語がクソ言語なら関数型言語が 今更になって認められるのはおかしいよね?ってだけ。 : デフォルトの名無しさん [sage] 2018/01/16(火) 16:31:38.96:bxI2XEx+ 言語が変わらなくても時間の経過によって環境の方が変化して評価が変わることは十分に有り得る プロセッサ負荷やメモリ使用量などの足枷がユルユルになって来たことで評価が高くなったのではないか 従って当時とか現在とかの時世を無視しては語れないこともある : デフォルトの名無しさん [sage] 2018/01/16(火) 16:51:39.64:JwS671kg それを認めると将来Rustがクソではなかったと証明される余地があるってことで、 それは事実ではないから違うな 今評価されてるのはあくまでラムダ計算であってLispではない、と言えば分かるか? : デフォルトの名無しさん [] 2018/01/16(火) 16:54:05.43:4ikneXPL Yes! That's correct!! 反論の余地とは時代等の外部環境の変化により評価も変化することだね。 なんか別のIDの人が答えちゃったけど。 : デフォルトの名無しさん [sage] 2018/01/16(火) 16:56:00.39:6i0TmEx8 木構造もインデックス使って書かないといけないのか : デフォルトの名無しさん [] 2018/01/16(火) 17:19:58.51:4ikneXPL ワロタwww お前は未来人か? 未来人を肯定するならrustがクソ言語であることも認めよう。 : デフォルトの名無しさん [sage] 2018/01/16(火) 17:41:30.80:O2dbzEJM ここまで言語に粘着する精神が理解出来ない : デフォルトの名無しさん [sage] 2018/01/16(火) 18:24:58.75:IF1qR6jo 子→親のリンク無し縛りでも動的な追加削除はできると思うけど。 子からのリンクが必要なのは、各ノードへの参照をそのままイテレータとして見せて前後移動したい場合のみじゃね で、まあ、子からのリンクが絶対必要として、そのためにRc使って要らん参照カウンタと間接参照を各ノード毎に持たせるってすごい無駄に思える 諦めてraw pointerでいいんじゃないかなあ…… : デフォルトの名無しさん [sage] 2018/01/16(火) 21:10:33.64:4jams3dQ センスの無さを自分に感じる…Rust難しいな ttps://play.rust-lang.org/?gist=0d5f8e5d767ac5b2a0b32b272e8c3797&version=stable : デフォルトの名無しさん [sage] 2018/01/16(火) 23:04:02.65:oMs3dhar 案外、未来でRustで書かれたプログラムが暴走して人類の危機だから、 現代にタイムリープしてきてRustを普及させまいとする工作員の可能性が微粒子レベルで存在……しないか : デフォルトの名無しさん [sage] 2018/01/16(火) 23:45:58.12:xhrqQ7lp そうだったら5chみたいな辺境じゃなくてもっとちゃんとしたところで活動してるだろ : デフォルトの名無しさん [sage] 2018/01/17(水) 00:18:50.74:0/gSTs3q 木構造がどういう構造なのかを勉強したほうがいい : デフォルトの名無しさん [sage] 2018/01/17(水) 01:17:11.33:SxnML8zQ これすき : デフォルトの名無しさん [sage] 2018/01/17(水) 01:43:08.30:YpnCuGck スカイネットはRustで書かれていたか… : デフォルトの名無しさん [] 2018/01/17(水) 14:46:11.61:lavU9jAu からのの流れで草生える 論理学できない人? ブーメランかな? wwwwwww : デフォルトの名無しさん [sage] 2018/01/17(水) 18:26:41.06:yaCIVqOg 子供じみたレスばかり : デフォルトの名無しさん [sage] 2018/01/17(水) 22:00:00.30:jFkmgXk5 言語オタクが喜びそうな機能を盛り込んだら本当に飛びつきやがったw みたいな言語だよな。 : デフォルトの名無しさん [sage] 2018/01/17(水) 22:09:59.44:L8tEPBaK 飛び付いたオタクは無事モジラの養分となりましたとさ : デフォルトの名無しさん [sage] 2018/01/18(木) 23:44:13.29:dg9MpWjG オッス!オラMozillaの養分!Rustいっちょやってみっか! : デフォルトの名無しさん [sage] 2018/01/19(金) 10:54:19.44:Oz2p1EAg またrustfmtごたついてる? : デフォルトの名無しさん [sage] 2018/01/19(金) 12:31:26.28:Bq+piyrd あれがごたついてなかったことが過去にあったか? : デフォルトの名無しさん [sage] 2018/01/19(金) 12:47:00.76:Oz2p1EAg せやねw 昨日まではcomponentに残ってたんだけどなぁ また "rustup run nightly cargo install rustfmt-nightly -f" でいれるかー : デフォルトの名無しさん [sage] 2018/01/19(金) 17:48:34.83:8na6CAQi stableのやつ使えば良いのでは : デフォルトの名無しさん [sage] 2018/01/19(金) 20:17:30.04:Oz2p1EAg deprecated言われるんだよー : デフォルトの名無しさん [sage] 2018/01/19(金) 22:14:56.98:mTCJnuoL ビルド速度がgo並になったら起こして : デフォルトの名無しさん [sage] 2018/01/20(土) 00:14:19.48:kiT7y7oh Rustのビルドそんなに遅いか? Scalaと比べたら誤差だろ : デフォルトの名無しさん [sage] 2018/01/20(土) 04:07:03.70:d0zmNqbj 誤差が流行語か何かなの? : デフォルトの名無しさん [sage] 2018/01/20(土) 11:11:11.19:Ceherv8P rustup component add rustfmt-preview --toolchain stable でインストールできるやつのつもりだった なぜかcargo-fmtは入ってないけど : デフォルトの名無しさん [sage] 2018/01/20(土) 11:44:54.08:3qVias3W 代入の結果が () を返すのって一見不満なんだが… #include <stdio.h> int main() { int a, b; a = b = 10; printf("%d, %d", a, b); // 10, 10 return 0; } a = b = 10 p [a, b] # [10, 10] let b = ref 0 in let a = b := 10 in Printf.printf "%b, %d\n" (a = ()) !b (* true, 10 *) fn main() { let (a, b); a = b = 10; println!("{:?}, {:?}", a, b); // (), 10 } 上から c, ruby, ocaml, rust の結果 所有権のこと考えるとこうなるしかないのかな : デフォルトの名無しさん [sage] 2018/01/20(土) 12:30:50.40:QK7u6cD2 うん そのcomponentが木曜日はあったのに 金曜日に無くなって 今見たら復活してた このままだと「月曜日に市場へ出かけ 火曜日にお風呂に入り 水曜日に力士でデビュー」ですよ そして確かにcargo fmt無くなってるね まぁ当面rustfmtが呼べればいいんだけど その辺りの差異は慣れるしかないかーとあんまり気にしてなかった 言われると確かにもやっとしますな : デフォルトの名無しさん [sage] 2018/01/20(土) 18:49:44.85:oxqYKpr1 VBAだと a = b = 10 は a = (b = 10) となり (b = 10)は比較演算になって aはBoolean型になるよ : デフォルトの名無しさん [sage] 2018/01/21(日) 00:23:31.24:zciK/NY/ 君のRustは20倍遅い - 簡潔なQ ttp://qnighy.hatenablog.com/entry/2017/05/02/070000 : デフォルトの名無しさん [sage] 2018/01/23(火) 19:31:47.22:DTlLuart ttps://qiita.com/SatoshiTerasaki/items/5bd3ee78a60f9a02e0fc juliaにすら速度で負ける自称低レベル言語があるらしい 別の意味で低レベルwwwwww : デフォルトの名無しさん [sage] 2018/01/23(火) 20:25:24.96:dAr3tjSO 数値計算ならjuliaは最速でいいだろ : デフォルトの名無しさん [sage] 2018/01/23(火) 20:28:32.79:xDBTrEL/ 疑似乱数ライブラリの差ね : デフォルトの名無しさん [sage] 2018/01/23(火) 20:37:51.11:S1z+wM9L 最適化のかかるリリースビルドしてない可能性は? : デフォルトの名無しさん [sage] 2018/01/23(火) 21:02:12.15:vM+Fbylb Rust凄い!Pythonの1.45倍も速い! って書くと、逆に遅く感じる : デフォルトの名無しさん [sage] 2018/01/23(火) 21:07:23.42:dAr3tjSO アンチスレのほうがアンチが話題ふってくれてRustに貢献してる感じする : デフォルトの名無しさん [sage] 2018/01/23(火) 23:14:43.88:mIozX/Eh 俺の環境でも Julia: 8.58sec Rust: 9.66sec で1秒遅いな。でも特にチューニングしてないコードで Julia にここまで迫るなら十分だな。 : デフォルトの名無しさん [sage] 2018/01/24(水) 00:30:05.97:HGDwBfie juliaってスクリプト言語なのに、 スクリプト言語に負けて十分な速度と言い張る低級言語wwwwww いやー信者ってすげえわwwwwww : デフォルトの名無しさん [sage] 2018/01/24(水) 02:48:41.80:0VEJNLN9 いやでもJuliaに勝とうと思えばIntel Fortran持ち出してくるか Cで環境固有のattribute使いまくるぐらいしか無いぞ割りとまじで JuliaもバックエンドはLLVMではあるんだけどな : デフォルトの名無しさん [sage] 2018/01/24(水) 05:34:41.30:KYfXJC7V 速い乱数ライブラリつかえばいいだけでは : デフォルトの名無しさん [sage] 2018/01/24(水) 05:48:01.55:Em3Ccg5v 乱数生成のアルゴリズムが一致してないものを比べても言語の速さは比べられんだろう Juliaの乱数生成のアルゴリズムが速度面で優れてるってことが分かっただけだ それでも動的言語でこの速度は確かにすごいと思うが あとC言語のベンチの結果が載ってないのも痛いな これじゃJuiliaが速いってことは分かってもRustが遅いかどうかは分からん でもJuiliaって数値計算特化の言語なんだろ だったら文字列処理とかは遅いんじゃないの? もう少しいろんな方面からパフォーマンス測ってみないとなんとも言えんな : デフォルトの名無しさん [sage] 2018/01/24(水) 06:38:42.48:EfrrCAID ボトルネックの概念はどこいった : デフォルトの名無しさん [sage] 2018/01/24(水) 07:51:23.43:Ko1heN49 ***が速いと言われているので使ってみて言うほど速くなった試しはないな 実際に使うときはIO性能も重要だしよく使う言語の方が最適化手法を知っているというのもありそう : デフォルトの名無しさん [sage] 2018/01/24(水) 09:29:26.67:xzoUw+gH Rustが将来どの分野で使われるようになるか分からないけど、 少なくとも科学技術計算の分野に食い込むのは無さそうね 過去の資産もない上に速度的な優位も無いんじゃねぇ : デフォルトの名無しさん [sage] 2018/01/24(水) 10:25:57.27:/aStfyAp そもそも既存の資産を置き換えるほどの魅力がない 学習コストもばかにならない : デフォルトの名無しさん [sage] 2018/01/24(水) 10:29:05.95:t7u6g4uo そもそもrustの魅力って何? コンパイル通させてくれない言語って印象しかない : デフォルトの名無しさん [sage] 2018/01/24(水) 12:02:46.02:QyvetUd4 コンパイル通させてくれないのが魅力 : デフォルトの名無しさん [sage] 2018/01/24(水) 12:12:31.05:U+b9l8FZ スレッドプログラムが書きにくいのがうり : デフォルトの名無しさん [sage] 2018/01/24(水) 12:43:30.69:E4B4d2jG コンパイラが手取り足取り教えてくれるから誰でも簡単に安全なコードが書けるよ : デフォルトの名無しさん [sage] 2018/01/24(水) 13:08:56.48:MMmENHs8 rustはスレッド書きやすいと思うんだけど 書きにくいって思う人が書きやすいと思うのはどんな言語?goみたいな? ネイティブと軽量スレッドの違いあるけど記述自体は殆ど変わらんと思うけど 軽量スレッドが言語に組込まれてないから? : デフォルトの名無しさん [sage] 2018/01/24(水) 13:33:02.69:t7u6g4uo コンパイル通せないのが魅力って、つまり malbolgeみたいな実用じゃなくて難解言語ネタの一種ってこと? : デフォルトの名無しさん [sage] 2018/01/24(水) 14:10:35.06:odqQ8MKT アンチスレでマジになるなって : デフォルトの名無しさん [sage] 2018/01/24(水) 17:06:47.36:AZpyydI9 NimのベンチはCと変わんねーよ : デフォルトの名無しさん [sage] 2018/01/24(水) 18:33:54.36:EfrrCAID 競プロだとRustが実行時間最速なケース結構あるから! ttps://yukicoder.me/ranking/speeder : デフォルトの名無しさん [sage] 2018/01/24(水) 18:55:55.94:Ko1heN49 そもそも科学数値計算はマルチコア・マルチノードで並列で処理するような : デフォルトの名無しさん [sage] 2018/01/24(水) 20:32:13.14:0VEJNLN9 競プロこそ全員違うアルゴリズムなんだから速度比べても当てにならん例じゃね : デフォルトの名無しさん [sage] 2018/01/24(水) 20:44:20.26:FegGsCEt 数日前 Twitterに落ちてたWebFrameWorkの比較 ttps://github.com/tbrand/which_is_the_fastest : デフォルトの名無しさん [sage] 2018/01/24(水) 22:10:38.68:HGQIxA/O まともに話題提供する人は本スレに書き込んでね。 ここは荒らしたい人専用です。 : デフォルトの名無しさん [sage] 2018/01/24(水) 22:32:48.54:Kg6vgwEo 本スレってどこ : デフォルトの名無しさん [] 2018/01/24(水) 22:38:34.80:Em3Ccg5v アンチは話題を提供してくれるという意味ではありがたいが 速度や人気度の話ばっかりで構文系の話が出てこないんだよなぁ。 ライフタイムがジェネリックとごっちゃになって書きづらくね?とか、 box構文いい加減にstableにしろよ いつまでnightlyのままなんだよ?とか swiftみたいにOption型をOption<T>じゃなくてT?って書けるようにしろよ とか 標準ライブラリ薄すぎだろ?もう少し分厚いの用意しろよ とか そういう類の文句はなんで出てこないんだ? : デフォルトの名無しさん [sage] 2018/01/24(水) 22:44:43.09:wqIqxjCG ライブラリ薄いってどういう意味? : デフォルトの名無しさん [sage] 2018/01/24(水) 22:46:12.69:EfrrCAID 最近のKaggleのコンテストでRust使ってる人が上位にいたという話を聞いた : デフォルトの名無しさん [sage] 2018/01/24(水) 23:45:26.58:MMmENHs8 標準ライブラリが少なくて外部crateに頼る方針のことでしょ node.jsに近くてGoの正反対 : デフォルトの名無しさん [sage] 2018/01/25(木) 00:39:04.73:vRTgxjb6 ライブラリ戦略についてはもうとっくにRustチームの方針は出てるから 一読することをおすすめする ttps://blog.rust-lang.org/2017/05/05/libz-blitz.html : デフォルトの名無しさん [sage] 2018/01/25(木) 00:42:15.89:vRTgxjb6 Option<T>に関してはSwift使ったことないから全く気にしたことなかったな OCamlとかScalaとかフツーにOptionって書くし box構文についてはなくても困らないとかそういう理由だろう それよりimpl Traitとかdynキーワードとかトレイト境界の特殊化とか もっと大事なのあると個人的には思うが : デフォルトの名無しさん [] 2018/01/25(木) 01:55:14.44:ERdxOKN9 それについてはもう知ってる 個人的にもう少し公式が積極的に用意してほしいなという願望を書いてみただけ ライブラリ探すの面倒なんだよな ただでさえ学習コスト高いんだから出来るだけ気軽に試せるようにとか それ以外のところで努力しないと普及しないんじゃって不安になる アンチ側からもこういった意見が出てもいいと思うんだけど出ないんだよな 速度云々とかStackOverFlowとか質問系サイトでの質問数云々とかばっかりでさ 構文だったり公式の方針とかには不満はないの?「こんな構文はダサすぎる」とかさ : デフォルトの名無しさん [sage] 2018/01/25(木) 02:11:58.34:rC3mCmPe rustcでwindows gui用exeをコンパイルするためにコンパイラに指定するフラグって何ですか? : デフォルトの名無しさん [] 2018/01/25(木) 02:12:53.18:ERdxOKN9 impl Traitって戻り値の型にTraitを指定して限定的に型推論を効かせようとしてるやつのこと? あれって引数の型も型推論できるんだっけ? 確かnightlyでは動くんだよね?まだstableには出来ないのかな? トレイト境界の特殊化って何だ?今調べてみたけどこれのことか? ttps://qiita.com/sinkuu/items/450ee1219b10072f09e8 へぇこんなのあるのか知らんかった こういう話題が欲しかったんだありがとう : デフォルトの名無しさん [sage] 2018/01/25(木) 03:06:48.02:9u+v4BXM 最速を目指すような解法ならどれも大体同じでしょ : デフォルトの名無しさん [sage] 2018/01/25(木) 07:25:36.79:Ab7Hvweq ここ ttp://mevius.5ch.net/test/read.cgi/tech/1514107621/ ここはキチガイとの戯れを楽しむスレになった。ここはここで楽しいが。 : デフォルトの名無しさん [sage] 2018/01/25(木) 09:55:44.06:sTHeRA3m コマンドプロンプト表示させないということならcrateのトップレベルに #![windows_subsystem = "windows"] と書けばよい : デフォルトの名無しさん [sage] 2018/01/25(木) 11:40:56.27:0g84eQqw 本スレとやらが過疎ってレベルじゃなく、アンチスレが大盛況なモダン言語()があるらしいwwwwwwwww : デフォルトの名無しさん [sage] 2018/01/25(木) 11:44:16.98:0g84eQqw Rustの構文とかバージョン1.0越えてるのにどんどん新しいRFC承認してばかすか変更加えてる未完成品じゃん そんな状態でバージョン1系名乗るとかモジラの頭の悪さがよく出てる そもそもnightlyの機能がないとクロージャー返す関数すらかけないってなんのネタ言語? トレイト周りも、実装記述できないパターンいくつもあって草しか生えない : デフォルトの名無しさん [sage] 2018/01/25(木) 11:50:20.45:0g84eQqw トレイトとか変な言語機能をオレカッケーで採用なんてするからこうなる 枯れたオブジェクト指向で堅実に設計しとけばこうはならなかったはず 借用とかライフタイムとかはまともにコード書けなくなるくらいガチガチに固めておいてこういうところ雑に採用した結果の産廃言語 : デフォルトの名無しさん [sage] 2018/01/25(木) 15:02:08.44:jzyb/pL+ キチガイ怒りの3連投 : デフォルトの名無しさん [sage] 2018/01/25(木) 15:09:07.07:ArcwQAgj まあトレイトについてはHaskellを真似してみたかっただけ感あるし Haskellで過去に起こった問題を丁寧に繰り返してる感も確かにある : デフォルトの名無しさん [] 2018/01/25(木) 16:29:05.71:ERdxOKN9 なお一投目は大方は自身の功績の模様 : デフォルトの名無しさん [sage] 2018/01/25(木) 17:51:49.66:MvjKilgL stableにするにはまだ早かったという意見には同意する : デフォルトの名無しさん [sage] 2018/01/25(木) 18:29:51.71:Ab7Hvweq 過疎スレよりキチガイと遊ぶほうが楽しいのは確かだからいいけどね まともに議論したいのにこっちに書くのはキチガイなだけで : デフォルトの名無しさん [sage] 2018/01/25(木) 18:43:15.16:J058jhwW そんなに互換性壊さなきゃ入らない機能拡張多い? do catch とか? : デフォルトの名無しさん [sage] 2018/01/25(木) 19:14:04.23:rC3mCmPe ありがとうございます : デフォルトの名無しさん [sage] 2018/01/25(木) 20:11:46.50:/QTN7Pk0 この言語にまともに議論するべき項目があるとでも? : デフォルトの名無しさん [sage] 2018/01/25(木) 20:23:48.91:MhE4CVNb stable → try! やめて ? 導入 は、はえーなとは思った : デフォルトの名無しさん [sage] 2018/01/25(木) 21:20:51.77:/QTN7Pk0 他にも、いちいちネットに繋ぐからクソ遅い上にオフラインで回せないビルドとか curl | sh - みたいなクソガバセキュリティの方法でインストールさせるとか エコシステムの設計も狂いに狂ってるし この言語にどこに議論の余地がある? gitに対するcvsと同じで、「常にこれと反対の選択をする指標」以外に存在価値はない : デフォルトの名無しさん [sage] 2018/01/25(木) 21:36:12.13:/QTN7Pk0 実際議論の余地ない言語未満だから本スレ()過疎ってるんだけどなwwwwwwwww : デフォルトの名無しさん [sage] 2018/01/26(金) 08:04:58.35:HENQu9TP 言語仕様が存在せずメジャーバージョンどころかマイナーバージョンが上がっただけで動かなくなる コードを大量発生させていたかつてのRubyと比べたらからしたらこの程度では騒ぐに値しない : デフォルトの名無しさん [sage] 2018/01/26(金) 08:22:11.94:z9b88rta 熱心にアンチやってるわりには重箱の隅みたいな話が多すぎる Mozillaに親を殺されたとかそういう話はないのか : デフォルトの名無しさん [sage] 2018/01/26(金) 10:26:17.45:znIIy1il Rustで既存のC++移植するってなった結果 箸にも棒にもかからず職場が知っちゃかめっちゃかなって大量退職出た話でもすればいいのか? ちなみにやってられんと退職した側な : デフォルトの名無しさん [sage] 2018/01/26(金) 10:53:40.00:RAULSrr3 あーそれはひでーな Rustは移植用の言語じゃなくて作り直し用の言語だからな : デフォルトの名無しさん [sage] 2018/01/26(金) 11:14:15.42:ar2pf4vp MicrosoftのWebアンケートで、使用言語の選択肢の中にRustあった この種のアンケートでは初めて見た : デフォルトの名無しさん [sage] 2018/01/26(金) 11:35:32.00:EHIaK4d5 Rust採用提案を阻止できなかった自分を恨めw 良い言語だけど万人受けはしない(万人は使いこなせない)って言ってるダルルォ ちなみにお前さんは使いこなせない側な : デフォルトの名無しさん [sage] 2018/01/26(金) 12:05:44.38:5LuHiBKU 採用したクソバカも同じこといってたな 書けない奴のレベルが低いってな そうかじゃあレベル高い奴だけで頑張れってんで一抜けさせてもらう人続出よ : デフォルトの名無しさん [] 2018/01/26(金) 12:18:38.89:L0KKIUhi C++を本来の用途に使ってたなら、Rustにしたからって破綻はしないだろ。 有りがちなのは、C++をシステムプログラミング以外に使っちまってるケース。 : デフォルトの名無しさん [sage] 2018/01/26(金) 12:52:39.33:UJP6KJd8 ほんとこれ。 : デフォルトの名無しさん [sage] 2018/01/26(金) 12:56:29.46:fJFt+P2A 退職したのに前の会社への恨み持ち越してるのか : デフォルトの名無しさん [sage] 2018/01/26(金) 13:41:46.53:7I6dYg15 いいね、闇がみえてきたね! : デフォルトの名無しさん [sage] 2018/01/26(金) 15:15:13.62:jR8Fs0w+ 前の会社ってよりは Rustとかいう言語未満の言語 それをステマして金稼ぎしてるモジラ それにホイホイのって導入して現場を破壊する信者 に恨み抱えてる : デフォルトの名無しさん [sage] 2018/01/26(金) 15:31:12.49:yKJ+kdvv 誰を恨んでるにせよ、それで退職を迫られたってんならともかく 自ら退職したってんじゃ、やっぱりねちっこく逆恨みしてるだけのただのバカじゃん : デフォルトの名無しさん [sage] 2018/01/26(金) 15:35:53.84:5izhVZpB 一度書いたプログラムが好評で次もrustで書きそうな流れだわすまんの : デフォルトの名無しさん [sage] 2018/01/26(金) 15:59:10.78:6QdkUQsL まあ冗談抜きにrustの一番のボトルネックはそういう選民思想を生みやすいってところだと思うよ。 : デフォルトの名無しさん [sage] 2018/01/26(金) 16:30:45.00:fJFt+P2A つまりRustという言語が悪いのであってRustを導入した人間はMozillaにだまされた被害者と : デフォルトの名無しさん [sage] 2018/01/26(金) 16:44:34.74:rPGk9NUB 早くこのスレ使い切ろうぜ キチガイ君はRustじゃなくても別の何かで辞めてたでしょ : デフォルトの名無しさん [sage] 2018/01/26(金) 18:25:07.37:iWA685Uq このスレに書き込んでいるやつは全員あらしだから使い切るいみないだろ。 またこいつのためにワッチョイなしのクソスレ作らなければいけないんだから。 : デフォルトの名無しさん [sage] 2018/01/26(金) 20:13:57.62:HENQu9TP 日本人は技術偏重でシステム設計が苦手。が事実であるならシステム設計に失敗した典型例 Rustを比較的新しめのモダンな他の言語に変えても結果は大差ないはずだ : デフォルトの名無しさん [sage] 2018/01/26(金) 22:33:39.83:E6d8BD2+ 過去スレでも似たような事言ってた奴だな 結局悪いのはRustじゃなくて、無計画にシステム移植しようとした会社組織と 選民思想こじらせた同僚(上司?)であって よしんばRustに恨み抱えたとしてもそれでこのスレ突撃って色々対象間違ってやしないかい。 : デフォルトの名無しさん [sage] 2018/01/26(金) 22:34:21.58:NbBttQVG アンチ活動してる人らって その時間をもっと自分の人生にとって有意義なことに使おうとか思わないのかな : デフォルトの名無しさん [sage] 2018/01/27(土) 04:06:23.87:Oxq9vXpN まあ今まで解決できなかった問題をrustなら解決できると思うのは間違いだよね。 : デフォルトの名無しさん [] 2018/01/27(土) 06:21:41.26:Iiinp9++ 特にRustはこう見えて、まだ実績のない新しい技術は採用してないからな traitはHaskellの型クラスそのままだし 凶悪で有名なボローチェッカだってC++で既に確立されてる メモリオーナーシップの概念をコンパイラレベルで組み込んでみただけに過ぎない どれも既に他言語で実績のある(枯れた)ものしか使っていない Rust(錆)ってのはそういう意味もあるんだろう Rustは理想ばっかり追い求めたの言語とか揶揄されることがあるが意外と現実主義だよ : デフォルトの名無しさん [] 2018/01/27(土) 06:26:10.98:Iiinp9++ 個人的には「潔癖症気味の現実主義」というのが一番しっくりくるかな : デフォルトの名無しさん [sage] 2018/01/27(土) 08:57:56.46:Ykl1KjXp > Rustは理想ばっかり追い求めたの言語とか揶揄されることがある いつどこで? : デフォルトの名無しさん [sage] 2018/01/27(土) 09:26:46.33:uvULDqPs >traitはHaskellの型クラス ダウト 高階型も使えない 型引数つきの実装と具体型実装が(stableでは)共存できない こんなもんを型クラスといっしょにしたらHaskellerに総括されるぞ : デフォルトの名無しさん [] 2018/01/27(土) 10:16:40.39:U4lILiv9 細かい違いはあるけど、トレイトは型クラスのパクリでしょ。 あれだけ似てるにも関わらず、別物だよとか言ったほうがHaskellerにry)、、、 : デフォルトの名無しさん [sage] 2018/01/27(土) 11:56:32.19:fpBaNK/W 機能のパクリ元が型クラスというのは否定してない 劣化コピー過ぎて 「これを型クラスと同じ機能なんて言うな型クラスはもっときちんとしたものだ」 って(ry されても知らんぞということ : デフォルトの名無しさん [sage] 2018/01/27(土) 13:16:35.08:/k0pW7Kb 昔のアンチは少しは論理的なところを突いてきたりした物だが最近のアンチはデタラメを書き散らす奴ばかりや プログラミング言語は所詮道具だからね。活かすも殺すも使う人次第 : デフォルトの名無しさん [sage] 2018/01/27(土) 17:08:29.67:CKKNLkXr に反論する事も出来ずに、デタラメって書き散らす事しか出来ない(何がデタラメかも説明出来ない)信者の方がレベル下がってるよ : デフォルトの名無しさん [sage] 2018/01/27(土) 20:43:13.64:QV3+oQDb 親を殺されたのかとか冗談で言ってたけど、Rustに職を奪われたんじゃあアンチになってもしょうがない : デフォルトの名無しさん [sage] 2018/01/27(土) 22:09:12.71:hzeKb9GQ 職は奪われたのではなくて自分から辞したのでは : デフォルトの名無しさん [sage] 2018/01/27(土) 22:17:34.43:fcNB4rEp 過去の発言見る感じ理解出来なかっただけなのでは : デフォルトの名無しさん [sage] 2018/01/28(日) 00:49:53.30:506STWk4 親がどうたらみたいなテンプレ即レスしかできないこんな世の中じゃ : デフォルトの名無しさん [sage] 2018/01/28(日) 12:30:29.35:CTwkTP2a まあRustなんて言語の信者だしこんなもんだろ : デフォルトの名無しさん [sage] 2018/01/28(日) 13:42:59.66:ULpxG+Ba ここにいるのは信者じゃなくてアンチなんだよなぁ : デフォルトの名無しさん [sage] 2018/01/28(日) 14:17:55.73:U31GXqmn 昔、自動車が普及したときも馬車の運転手は職を奪われたらしいね : デフォルトの名無しさん [sage] 2018/01/28(日) 14:35:46.33:Y4YkWHjI どっちかっていうとそいつらが最初に自動車の運転覚えさせられたんじゃなかったか。 : デフォルトの名無しさん [sage] 2018/01/28(日) 15:31:25.12:ygkIOaXP twitterでこのスレの粘着をガイジ呼ばわりするのは気持ちはわかるけどコミュニティの品位下げまりだな。 RTする人もどうかと思うよ。 ttps://twitter.com/kgtkr/status/957237334772076544 : デフォルトの名無しさん [sage] 2018/01/28(日) 16:40:12.52:xt0HLsci 被害妄想だな。Rust叩いてるのは一人じゃなくて複数人だぞ。 Rustヘイトが嫌ならRustでいいもの作って見返してやれ。 : デフォルトの名無しさん [sage] 2018/01/28(日) 17:13:57.16:5qf8sgo3 さらしたらあかん : デフォルトの名無しさん [sage] 2018/01/28(日) 19:17:59.37:506STWk4 晒されるべくして晒されてるとしか思えんがな。 2ch でヘイトばらまくよりも遥かに愚かなことやってるって気づかないのかね。。 : デフォルトの名無しさん [sage] 2018/01/28(日) 20:02:43.52:YLaPUMui 2ch内のあちこちで宣伝活動しまくってた奴か 「Anontown site:5ch.net」 : デフォルトの名無しさん [sage] 2018/01/29(月) 10:09:54.89:cTy6KKj5 Rust好き()を自称してるの、 モジラのステマにホイホイ乗る情弱か、選民思想こじらせた害悪かのどっちか : デフォルトの名無しさん [sage] 2018/01/29(月) 12:32:40.49:gyvOdhIS 誰も言わないから言うけどrust1.0から矩ロージャー返す関数は書けるよね : デフォルトの名無しさん [sage] 2018/01/29(月) 12:35:01.46:qJ5Y0u8g FnBoxあたりは安定してなかった気がするなぁ(うろ覚え : デフォルトの名無しさん [sage] 2018/01/29(月) 12:57:54.97:e3t8nG6R Box<Trait>を介してしか返せないのを拡大解釈して返せないと言っている可能性 : デフォルトの名無しさん [sage] 2018/01/29(月) 13:00:19.31:8fnjeDMR Javascript(Typescript)とRubyしか書いたことないCの知識すらないゴミなんですが レベルアップしたくてRustを学習しようと思ってます みなさんよろしくお願いいたします : デフォルトの名無しさん [] 2018/01/29(月) 14:08:43.68:9Iegn//U 他言語では普通は暗黙的にボックス化されるからな。 確かに俺も初めての時はなんでそのままじゃ返せないんだよ(# ゚Д゚)って思った。 メモリ配置とか全く考えてないやつからしてみればそれが欠陥に見えるんじゃない? ガベコレ有りの言語しかやったことないんじゃたぶん苦労するとは思うけど頑張ってね : デフォルトの名無しさん [sage] 2018/01/29(月) 14:38:41.55:e3t8nG6R NLLとかimpl Traitとかトレイト境界の特殊化みたいに ないと直感的なコーディングに支障をきたす機能が nightlyにしかないのが色々と問題だよなあ 今年中にstableに入ってくれるかな? : デフォルトの名無しさん [sage] 2018/01/29(月) 20:12:16.94:NFyWZage 暇人が集うスレ : デフォルトの名無しさん [sage] 2018/01/29(月) 21:48:03.79:+sJoQDtU 2chに暇人以外が書き込んでるのか? : デフォルトの名無しさん [] 2018/01/30(火) 07:26:03.02:PAEO4Z3v わしゃCを2年くらいやってたけどrustにはかなり苦労してる futuresがとくに : デフォルトの名無しさん [] 2018/01/30(火) 07:34:51.89:LjTTtDxC Cやってた人はHaskell的な型システム及び抽象化に悩む Cやってこなかった人はボローチェッカに悩む : デフォルトの名無しさん [sage] 2018/01/30(火) 12:22:36.01:VKyCDj4k futuresはまず型合わせゲームだからなあ : デフォルトの名無しさん [sage] 2018/01/30(火) 15:14:39.48:gbcpxzjB tokio関連は中々苦戦してる : デフォルトの名無しさん [sage] 2018/02/01(木) 20:28:15.90:N6KaDqJG システムプログラミングというかローレベルソフトウェアやハードウェアに対する理解がある人って昔より増えているのかな? パッと見た感じだと増えるどころか減っているように見えるんだよな。今やスマホやゲーム機のハックも海外頼みだし : デフォルトの名無しさん [sage] 2018/02/02(金) 00:17:57.13:NSR+boPa ハック文化は国柄の違いがある? 国民も警察も役所もバカ真面目がそれなりの割合いる日本ではリスキーとか? 国民も警察も役所も真面目なのが少ない国民性だとやんちゃやっちゃう?? : デフォルトの名無しさん [sage] 2018/02/02(金) 13:54:29.55:8pEJWY7k 組み込みハードだったりソフトウェアは昔より圧倒的に入手しやすくはなってる。 ただ、取り組む時間のある奴は減ってる。 : デフォルトの名無しさん [sage] 2018/02/02(金) 18:43:10.61:bV8uP0kl 組み込みする人は増えたけど既成のフレームワーク等がないと何も出来ない人ばかりじゃね? ArduinoにしろRaspberry Piにしろそんな感じだし : デフォルトの名無しさん [sage] 2018/02/03(土) 02:52:22.09:pGjKp5ZC RustからいくつかのターゲットへクロスコンパイルしたいのでLLVMに関する情報を収集しているけど全然無くて笑えない スライド&薄い本・・・英語blogの翻訳記事・・・ もっとも英語でも少ない感じではある。LLVM IRを俺様命令セットにトランスレートするチュートリアルとかないかな : デフォルトの名無しさん [sage] 2018/02/03(土) 03:44:27.93:st4XedSX チュートリアルてこれじゃ足りないって話なん? LLVM Tutorial: Table of Contents ? LLVM 7 documentation ttps://llvm.org/docs/tutorial/ : デフォルトの名無しさん [sage] 2018/02/03(土) 03:46:44.58:st4XedSX 公式が一番情報豊富なのでは Overview ? LLVM 7 documentation ttps://llvm.org/docs/index.html : デフォルトの名無しさん [sage] 2018/02/03(土) 03:57:15.71:pGjKp5ZC External Tutorials の Tutorial: Creating an LLVM Backend for the Cpu0 Architecture がそれっぽいけど難しい感じだなぁ・・・読み解くだけでどれだけ掛かるやら : デフォルトの名無しさん [sage] 2018/02/03(土) 10:51:24.51:qLl3WyXH 最近キチガイの書き込みがないぞ 不安になるからいつものたのむよ : デフォルトの名無しさん [sage] 2018/02/03(土) 19:20:49.45:tASWeb03 最近の荒らしはコミュニティの破壊が目的だったりするから人がいなくなれば荒らしも書き込まなくなる : デフォルトの名無しさん [sage] 2018/02/03(土) 20:38:24.75:a6bGJm7K 日本語rustコミュニティーはslackがメインだから5ch荒らすのはコスパ悪そう : デフォルトの名無しさん [sage] 2018/02/03(土) 21:23:52.61:tASWeb03 アカウント制の所は荒らすのが面倒だからな : デフォルトの名無しさん [sage] 2018/02/03(土) 21:44:07.35:0ACFcPYa 標準のRustのターゲットセットにないプラットフォームへのコンパイラ移植は素人が齧ってなんとかなるものじゃないだろ clangだったら何とかなるとかいうレベルの玄人が考えるならまだしも、今からチュートリアル読むとかだとそうでもなかろうし 素直にターゲットプラットフォームに用意されたコンパイラと言語を使えよと組み込み屋のマジレス : デフォルトの名無しさん [sage] 2018/02/03(土) 22:28:24.06:pGjKp5ZC それだとメモリ保護のないgccしかないじゃないか LLVMで任意の命令セット用のコードを吐かせられるようになればRust以外のコードも使える可能性が出てくる : デフォルトの名無しさん [sage] 2018/02/04(日) 10:49:53.13:4R0vgBCw 別の場所荒らしてる可能性もある : デフォルトの名無しさん [sage] 2018/02/04(日) 11:02:15.22:PARqfeIP 再就職できたのかな : デフォルトの名無しさん [sage] 2018/02/04(日) 13:15:52.74:4R0vgBCw Rustさわらなくていい職場に就職できるといいね。 : デフォルトの名無しさん [sage] 2018/02/04(日) 14:58:16.30:n0f2c1x+ Rustスレの話題がアンチのコメント内容ですらなく、 アンチの人物自体になってるの草 : デフォルトの名無しさん [sage] 2018/02/04(日) 15:08:34.72:vt+NPch7 だって反論できないから... : デフォルトの名無しさん [sage] 2018/02/04(日) 18:42:02.78:PARqfeIP ここはアンチスレだからしゃーない : デフォルトの名無しさん [sage] 2018/02/04(日) 18:58:37.33:+3ZnNKLF そういえば反論への反論見てないな : デフォルトの名無しさん [sage] 2018/02/04(日) 21:24:01.23:4/Qe/IC7 slackでコミュニティあるんだ。 なんだかクローズドなんだね…。 : デフォルトの名無しさん [sage] 2018/02/04(日) 22:58:45.39:A0rnU4uT 別に誰でも入れるし便利だからSlack使ってるだけでしょ : デフォルトの名無しさん [sage] 2018/02/05(月) 07:26:33.41:JcRvpKib 今のコミュニティはクローズドな登録制が主流でパソ通時代に逆戻り インターネット初期と比べて身のある情報へのアクセス性は低下している ゴミ情報はドンドン出てくるが : デフォルトの名無しさん [sage] 2018/02/05(月) 09:51:55.29:/K8k+grU slackがクローズドて化石丸出しやな : デフォルトの名無しさん [sage] 2018/02/05(月) 10:00:32.15:qLNGXKaK slackはgoogleで引っかからないからクローズな感じするなぁ : デフォルトの名無しさん [sage] 2018/02/05(月) 10:11:12.31:wUtyFhhV 「インターネット初期」というのがいつ頃を指してるんだろうか : デフォルトの名無しさん [sage] 2018/02/05(月) 10:17:07.26:/K8k+grU LinuxカーネルのMLもクローズドってこと? ばかかな? : デフォルトの名無しさん [sage] 2018/02/05(月) 12:46:51.78:nIRmYvRs slackみたいな外から干渉できないクローズドなもの使ってるって時点で 選民思想丸出しなのうける ほんと内輪で群れてオレツエーやってるだけだな : デフォルトの名無しさん [sage] 2018/02/05(月) 12:48:44.23:nIRmYvRs 誰でも入れるって、身分登録すれば入れるって時点で選別入ってるんだよなあ : デフォルトの名無しさん [sage] 2018/02/05(月) 13:02:05.80:nXlM7JLe 「選民思想だ! 自分は排斥されてるんだ!」って完全に病人だなコイツ : デフォルトの名無しさん [sage] 2018/02/05(月) 13:30:38.33:nVQqrM8P 逆に何だったらいいんだ : デフォルトの名無しさん [sage] 2018/02/05(月) 13:34:25.46:c8R/gbtV 2chのスレだろ : デフォルトの名無しさん [sage] 2018/02/05(月) 15:20:53.51:U4I7yy4R 外から干渉出来ないって何言ってんだ? githubでもアカウント無いと意見出来ないだろ 参照だけは匿名でやらせろって? 何でそんなに匿名に拘るんだ?アンチ活動したいから? : デフォルトの名無しさん [sage] 2018/02/05(月) 15:37:26.03:pY8e294G nimって良い言語があること教えてやろう みんな大好きPythonライクな文法で、GCがついてる安全ランタイム、さらにはコンパイラにgccも指定できる最高な言語だ Rustなんてコンパイルが通せない上にコンパイルターゲットが制限される言語なんてやめて、nimを使おうぜwww : デフォルトの名無しさん [sage] 2018/02/05(月) 17:02:07.40:TpGfDILl バカはお前だろw : デフォルトの名無しさん [sage] 2018/02/05(月) 17:05:37.05:yc1fmOUD slack、herokuに誰でも入れるようにするアプリ入れてるからオープンだぞ おまいらも来いよ : デフォルトの名無しさん [sage] 2018/02/05(月) 18:19:57.60:1nmt8gZw アンチは来なくていいです : デフォルトの名無しさん [sage] 2018/02/05(月) 18:29:11.13:hUa2T0sQ GCが無いと正しく参照を破棄できません、と言うことかな : デフォルトの名無しさん [sage] 2018/02/05(月) 18:30:59.84:JcRvpKib slackって登録しないと発言どころか参照すら出来ない気がするけど違うのかな? それをオープンと言えるのであればMixiもオープンって事になっちゃうな 昔のBBSはアカウント制ですらなかったけど自治されていたし治安は今よりよほど良かったよ ADSLの初期くらいまでかな。個人運営のサービスがコミュニティの中心だった頃 : デフォルトの名無しさん [] 2018/02/05(月) 18:38:45.14:mgITU/Rx 排斥いうたら2chだってIP制限で海外からは投稿できなかったのでは : デフォルトの名無しさん [sage] 2018/02/05(月) 18:49:13.14:kWZ/hArJ 参照すら出来ない、と参照できるが書けない、 がどれだけ大きな違いなのか理解できない低脳が Rustを推してると思うと眩暈がするな : デフォルトの名無しさん [sage] 2018/02/05(月) 18:50:02.90:Z8mqKEJN 参照できないの?俺はできてるが : デフォルトの名無しさん [sage] 2018/02/05(月) 19:05:15.69:Z8mqKEJN まぁslackはクローズドだ!で、いいんじゃね? だから何?という感じだが : デフォルトの名無しさん [sage] 2018/02/05(月) 19:18:05.85:JcRvpKib つーかに同意。サーチエンジンに出てこないんじゃアングラサイトと変わらない : デフォルトの名無しさん [sage] 2018/02/05(月) 19:34:09.86:Q5bowBtP だから僕はついていけなくて当然なんですぅ 情報収集能力がないわけじゃないですぅ 他人と関わるコミュ力が無いわけじゃないんですぅ タダ乗りしたいのに誰も教えてくれないから仕方ないんですぅ 池沼かよw : デフォルトの名無しさん [sage] 2018/02/05(月) 19:39:47.89:I9qyJ+/h 検索するとネトゲの情報出てくるし ググらビリティはただでさえ悪いのに そもそも情報がオープンになってないんじゃ普及しないわな : デフォルトの名無しさん [sage] 2018/02/05(月) 19:49:09.69:WHi8oIjP タダ乗りというが、逆に考えてみような? 会員制のサイトに登録しないと言語情報すらもらえない言語、誰が使うんだ?と gccの情報を得るためにGNUのメーリングリストに登録を強制されるのか? : デフォルトの名無しさん [sage] 2018/02/05(月) 20:36:54.61:Q5bowBtP 程度論だろ。 IRCのチャンネルもあるんだし、それなりにネットに記事もあるじゃん? Racketよりは記事ある感触だけど。 次は「英語だから読めないよ…」か? : デフォルトの名無しさん [sage] 2018/02/05(月) 21:39:47.06:avjJE4dZ 言語のslackコミュニティーなんか珍しくもなんともない気はするが : デフォルトの名無しさん [sage] 2018/02/06(火) 00:09:30.18:1Ps9xv3m アカ無しの所は無責任が複数、アカ有の所は八方美人が多数じゃね? どちらも技術に関して議論するには向かない環境なんだよな : デフォルトの名無しさん [saeg] 2018/02/06(火) 00:21:49.22:JlkQGCgw そのslackへのリンクと参加方法を教えてくださいな : デフォルトの名無しさん [sage] 2018/02/06(火) 07:45:19.78:ikJ7N8kC プログラミング言語 Rust 3 [無断転載禁止]©2ch.net ttps://mevius.5ch.net/test/read.cgi/tech/1495343069/512 "> ttps://mevius.5ch.net/test/read.cgi/tech/1495343069/512 > 512 名前:デフォルトの名無しさん[] 投稿日:2017/08/10(木) 14:00:03.18 ID:g9gtECZC > ttp://https://rust-jp.slack.com "> ttps://rust-jp.slack.com > 未登録の人 -> ttps://rust-jp.herokuapp.com/ > Rock54: Caution(BBR-MD5:b95868ef2c0ed5e765a4d10ada4cf289) 前スレのレスだけどどちらもアカウントがないと見られないようだ 参照できるって言っている人はどこで見ているんだろうね 👀 Rock54: Caution(BBR-MD5:b95868ef2c0ed5e765a4d10ada4cf289) : デフォルトの名無しさん [sage] 2018/02/06(火) 07:52:37.75:+KQRW2fG ここでも見ておけば ttps://users.rust-lang.org/ : デフォルトの名無しさん [sage] 2018/02/06(火) 09:02:30.10:FeO4l6pW モジカスが口癖の彼にもSlackであばれて欲しいわ : デフォルトの名無しさん [sage] 2018/02/06(火) 12:03:51.81:8dp6h+2N むしろMozillaの人もいるオフィシャルのフォーラムでやってほしい : デフォルトの名無しさん [sage] 2018/02/06(火) 19:39:06.79:ikJ7N8kC というかSlackに誘導するならそのメリットを論理的に説明してくれよ 論理性がないんじゃ荒らしの有無にかかわらず中身のある議論にならないだろ : デフォルトの名無しさん [sage] 2018/02/06(火) 20:31:04.31:xl4JcgMr 日本語コミュニティの話してたのか : デフォルトの名無しさん [sage] 2018/02/06(火) 21:13:44.40:Sq/rqFI4 そもそもslackに入るまでに中の人とリアルで仲良くなって コミュニティへの貢献を認められて初めてアカウント発行してもらってから それからまた別の新しい人が入るまで相撲部屋もびっくりの可愛がりが続くんだろ : デフォルトの名無しさん [sage] 2018/02/06(火) 21:24:19.60:1F/augL/ ttps://rust-jp.herokuapp.com/ どうぞ 👀 Rock54: Caution(BBR-MD5:b95868ef2c0ed5e765a4d10ada4cf289) : デフォルトの名無しさん [sage] 2018/02/06(火) 23:06:24.79:LBdUtEA+ 質問したら一瞬で答えてくれる : デフォルトの名無しさん [sage] 2018/02/07(水) 00:14:19.83:Vg5bxMs0 そのslackいつどこで誰が用意したものなのか怪しいな? : デフォルトの名無しさん [sage] 2018/02/07(水) 00:41:50.41:957VKXvw 🤷 : デフォルトの名無しさん [sage] 2018/02/07(水) 03:22:37.11:vnVhjNSA まぁ確かにここ見てる日本人相手に愚痴愚痴言うよりも 開発者に直接開発止めろって抗議した方が可能性はあるかもしれないぞ : デフォルトの名無しさん [] 2018/02/07(水) 06:56:10.70:/JxsdeT1 登録してなくても読めるようになるように準備してるみたいだよ どっちが閉鎖的なんだか : デフォルトの名無しさん [sage] 2018/02/07(水) 07:33:30.28:4CaeSEo7 相談者にとって重要なのはすぐに回答がある事じゃなくて問題が解決することではないのかな? 今のインターネット界隈はドヤ顔で問題の解決に寄与しない回答をする奴がいっぱいいるしな : デフォルトの名無しさん [sage] 2018/02/07(水) 07:45:02.67:NkOE61si slackは怖くないよ坊や : デフォルトの名無しさん [sage] 2018/02/07(水) 07:48:47.78:AQTmawz3 言語自体に文句付けるのはともかく slack "も" 使ってることに文句付けるのはさすがに無理がある : デフォルトの名無しさん [sage] 2018/02/07(水) 08:34:18.86:957VKXvw やだやだ!slackはクローズドなんだ! : デフォルトの名無しさん [sage] 2018/02/07(水) 10:01:39.56:tqZIcWxZ ここはアンチスレなのを忘れるな : デフォルトの名無しさん [sage] 2018/02/07(水) 11:40:23.53:Pu7JPQ8z 当たり前だろ このスレのレベルの話ならすぐ解決するわ : デフォルトの名無しさん [sage] 2018/02/07(水) 12:07:05.01:j8KEeDz8 無理筋なアンチ活動はまともなアンチ活動の足を引っ張るからな : デフォルトの名無しさん [sage] 2018/02/07(水) 12:44:48.85:2VYDCh9o ってか、余程、コンパイルを通せなかったのが悔しいんだろうな。 俺色々書いてみたけど、まともに書いてりゃそこまで理不尽な怒られ方しないし、むしろCのノリで書いて通らなかったところは、本気で考えた方が良いところだったよ。 嫌ならGC言語使え、ってのは真っ当だな、と思うぐらい。 : デフォルトの名無しさん [sage] 2018/02/07(水) 15:44:48.82:h93jPMQ5 slackは知らんけど、このスレもRustはヒープよりスタックを好んでるって言ったら BoxやVecでヒープメモリ使うからそんなことないとかいう反論が来るくらいにテキトーだけどな 全員が本当にそう思ってるわけじゃないだろうけど、Rustを知らないアフォがドヤ顔してんなと思ったことがある ユーザもアンチも当てにならないスレだから、双方の言い分を話半分にスレで遊んでる人が実際多そう : デフォルトの名無しさん [sage] 2018/02/07(水) 15:56:46.11:B7KlsuYm そういや英語圏だとRedditが機能してるけど日本語はないよね? Qiitaのが記事があるぐらい? : デフォルトの名無しさん [sage] 2018/02/07(水) 18:49:54.59:j8KEeDz8 発言者の分かるslackの方が質は良いな 適当なこというとつっこみが入るし : デフォルトの名無しさん [sage] 2018/02/07(水) 20:41:22.86:tornJWrh そりゃ C で書く必要がないくらい共有する資源がなけりゃそうだろうね。 : デフォルトの名無しさん [sage] 2018/02/07(水) 21:16:14.09:KiWR7eFA Cで書く必要が無いからRustで書いてるんじゃん? Cで書く必要があればCで書いてるだろ。 バカなの? : デフォルトの名無しさん [sage] 2018/02/07(水) 21:29:50.56:J2C0nRVP (従来の)Cで書く必要のない/(現在の)Cで書く必要のない という話だな Rustが出てその領域が広がった訳だ : デフォルトの名無しさん [sage] 2018/02/08(木) 10:13:45.53:kJ586q4d Cで書く必要がないならRustを使うよりもっと良い選択肢がある Cでは都合悪くてRustが都合よくなるなんてそれこそ信者に都合のいいシチュエーションは存在しないんだよ : デフォルトの名無しさん [sage] 2018/02/08(木) 10:30:12.89:lNHbs2n5 Cでは都合悪くてRustでは都合がいいとなると、なんかのパーサとかじゃない? 電文パーサーで毎回危なっかしいコード書くやつ居るからな。 レビューしてると辛い。 : デフォルトの名無しさん [sage] 2018/02/08(木) 11:02:57.86:ull0B38P OpenSSLをRustで書き直すと良いと思うよ これ以上に都合の良いシチュエーションなんてそうそう無いと思う : デフォルトの名無しさん [sage] 2018/02/08(木) 11:30:45.60:kJ586q4d おまえセキュリティモジュール一から書き直すとか正気か? Rust信者は本当にコンピュータ科学に対して無知なのが良くわかるわ : デフォルトの名無しさん [sage] 2018/02/08(木) 11:35:38.11:kJ586q4d ttps://mobile.twitter.com/masaru_kaneko/status/960969868584534016 ttps://mobile.twitter.com/masaru_kaneko/status/960969963539283968 ttps://mobile.twitter.com/masaru_kaneko/status/960970196407091200 目先の口八丁で金さえ集まりゃなんでもいいクズの手口 技術的にそれっぽいこと言って金をかき集める手法はRustのそれと良く似てる この詐欺会社がRust採用してたのはこういうところもあったんだろうなあ : デフォルトの名無しさん [sage] 2018/02/08(木) 12:09:12.81:yyxjs2l6 つ rustls : デフォルトの名無しさん [sage] 2018/02/08(木) 12:31:10.93:A+EVqeLv opensslは猿が書いたかのような酷いコードだからいいんだよ お前のようなお猿さんに酷さは理解できないだろうけど : デフォルトの名無しさん [sage] 2018/02/08(木) 12:47:41.35:kJ586q4d その解決に必要なことはテストの追加とリファクタリングであって、ナウい言語()での書き直しではない 実際テストの追加とリファクタリングだけでLibreSSLはうまく中身を安定させた こんなことも知らないんだからRustなんてもてはやすんだな信者は : デフォルトの名無しさん [sage] 2018/02/08(木) 13:02:49.09:lNHbs2n5 問題があろうが枯れていれば充分、はまぁ正しいからな。 スクラッチの方が良かろう。 : デフォルトの名無しさん [sage] 2018/02/08(木) 13:43:00.17:kJ586q4d 一から書き直すとして、それが「猿が書いたような」OpenSSLの品質に到達するのはいつだ? 中身は確かに色々ツギハギだが、OpenSSLには長期に渡って枯れた品質というものがある そしてそれはLibreSSLにフォークされて固められた 一から書き直したものがその枯れた品質のコードに追い付けるようになるまでに OpenSSLはより枯れて品質も高まる 結局書き直したところで元になったものの品質を越えることなどない という常識すらないのか : デフォルトの名無しさん [sage] 2018/02/08(木) 14:05:50.62:uiz1GHBs rustls面白い 読みやすいー(個人の間奏の感想 : デフォルトの名無しさん [sage] 2018/02/08(木) 15:22:02.72:trVr3OQ9 memcachedのlibketama互換実装無さそうだな : デフォルトの名無しさん [sage] 2018/02/08(木) 15:22:30.58:y2v60Kq4 thrussh も有るよ : デフォルトの名無しさん [sage] 2018/02/08(木) 16:17:20.14:PrR79Rn3 金子勝持ち出してくるのすごいななりふり構わずか : デフォルトの名無しさん [sage] 2018/02/08(木) 16:30:31.59:kJ586q4d なりふり構わずなのは詐欺集団の方だろう 少なくともスパコン詐欺については一番分かりやすい見解を出してるのが金子先生だ 金子先生にモジラの資金洗浄まで踏み込んで欲しいがさすがに国政と関係なくなってしまうから 特捜部の調査でモジラとの関係性が出てくるかがポイントだと思ってる : デフォルトの名無しさん [sage] 2018/02/08(木) 16:32:24.71:yvLXrI/i アンチと見せかけたネタスレだったか : デフォルトの名無しさん [sage] 2018/02/08(木) 19:06:49.62:aJ/omS2p 確かにアンチですらないアホ : デフォルトの名無しさん [sage] 2018/02/08(木) 19:11:08.63:lDylx5Gv 今ある物のクローンを作ったって大した意味はないよな やるならgcc→clangみたいに一新しないと : デフォルトの名無しさん [sage] 2018/02/08(木) 20:03:33.93:Tc135I98 Rust使うような会社に勤めてたんだし何かしら秀でた才能はあるんだと思ってて 多分それは粘り強さとかなんだろうな 悪い方に使うとただしつこい存在になるし消えて(本当に死んで)欲しい : デフォルトの名無しさん [sage] 2018/02/08(木) 20:17:12.72:lDylx5Gv 単に社畜と思われているだけだったりしてw : デフォルトの名無しさん [] 2018/02/08(木) 22:32:10.61:SZXnan2y 危なっかしいやつを会社から追い出すためにRustにするって話? (危なっかしいやつは何を使わせても危なっかしいコードしか書かんだろ) : デフォルトの名無しさん [sage] 2018/02/08(木) 23:03:43.45:yyxjs2l6 Rustは危なっかしいコード書くとコンパイルが通せないからね コンパイル通るコードが書けない、Rust死ね。氏ねじゃなくて死ね。 って発狂する奴を追い出せば、残りは危なっかしくないコードが書ける奴だけ残りそう 日本のプログラマ(笑)だと発狂しない奴が一握りしか居なくて立ち行かなくなりそうではある プログラミングなんて海外に外注した方が安くつくんだからRustなんて書けなくて良いんだよ、とか強がりたい あと、stackoverflowで相変わらず愛されてるから海外プログラマに任せた方が実際幸せそうだ : デフォルトの名無しさん [sage] 2018/02/08(木) 23:41:55.94:B4Zxy0pC コンパイル通せないあぶなっかしいコードって何? : デフォルトの名無しさん [sage] 2018/02/09(金) 00:33:51.16:5EjjXs8r 不必要にunsafeやallow()を乱発する安全機能すり抜けるような危なっかしいコードを書く奴が現れないとでも? : デフォルトの名無しさん [sage] 2018/02/09(金) 00:35:40.73:5EjjXs8r ちゃんとエラー処理せずunwrap多用したりletのプレースホルダ代入多用してコンパイル通したり : デフォルトの名無しさん [sage] 2018/02/09(金) 00:38:37.85:tqgK99NT コンパイル通せるじゃん : デフォルトの名無しさん [sage] 2018/02/09(金) 03:07:53.23:SCMz9V3U unsafeやunwrapでビルド成功まで辿り着けてるならまだマシで、なんかはそこにすら辿り着けそうにないからなw そして、unsafeやunwrap多用してなんとかコンパイル通すバカもついでにふるいから落としちまえ 残るのはC/C++でもRustでも安全なコードを論理的に考えて書けるツワモノだけだ どっちでも良いならツールチェインやらテスト環境やら依存ライブラリ解決やら一式やってくれるRustのが良いかな C/C++はPJ毎の環境に慣れるのが面倒だ、、、PJ毎にMakefileだのTestSetだのが違って鬱陶しい : デフォルトの名無しさん [sage] 2018/02/09(金) 04:40:42.02:D/Vspq9T ttps://ideone.com/UqQplz コンパイルに成功したのに計算が合わない(´・ω・`) : デフォルトの名無しさん [sage] 2018/02/09(金) 07:27:03.72:SCMz9V3U 論理的なコードが書けてて良かったじゃん、次はバグのないコード書こうな っていうツッコミ待ちだよな?マジで質問してるならplay.rust-lang.orgでやってくれよ : デフォルトの名無しさん [sage] 2018/02/09(金) 08:34:07.04:emk/1MAP Rust使ってコンパイラに叱られるだけでだいぶマシになる。 追い出すとか、そこまで馬鹿ばっかでもないよ。 : デフォルトの名無しさん [sage] 2018/02/09(金) 08:35:43.78:emk/1MAP おなじレベルのCの静的解析ツールクソ高いからな。 : デフォルトの名無しさん [sage] 2018/02/09(金) 09:02:32.79:MeuD6vTR 実はRust擁護派の方がコード書けないので 実際にコード書かれて質問されても答えられないんだぞ の言ってる事はそういう事だからな。分かってやれよ : デフォルトの名無しさん [sage] 2018/02/09(金) 09:11:11.18:KVTbu5ic Rustでどれだけひどいコードかけるか勝負? : デフォルトの名無しさん [sage] 2018/02/09(金) 10:02:57.85:9++GRmyG 同じコードをCで書いてみ?きちんと書けると保証しよう つまりそういうことだ : デフォルトの名無しさん [] 2018/02/09(金) 13:05:03.94:EcebA6oX let sum1 = sum1 + column1; if sum1 != sum1 + column1 { println!("計算が間違ってます!"); } : デフォルトの名無しさん [sage] 2018/02/09(金) 13:08:30.57:EcebA6oX 途中で書き込みボタン押してしまった みたいなのCで書こうが駄目だと思う : デフォルトの名無しさん [sage] 2018/02/09(金) 13:36:48.67:9++GRmyG Cで書けばそういうクソなミスは起こらない : デフォルトの名無しさん [sage] 2018/02/09(金) 13:46:22.32:SCMz9V3U ワロタww これがCならきちんと書けると保証できる子はやっぱりふるいから落とされて妥当じゃないか あまりに汚いコードで呆れて読む気が失せたからボケだと理解したんだよ 実際、が指摘するようなしょうもないボケを仕込んでるじゃないか : デフォルトの名無しさん [sage] 2018/02/09(金) 13:47:19.06:EcebA6oX C言語凄いんだな そんな魔法の言語には勝てないな : デフォルトの名無しさん [sage] 2018/02/09(金) 13:51:32.63:hI338CnM そもそも10+21+32+43+54+65+76 が間違ってるぞぃ (!= 308) : デフォルトの名無しさん [sage] 2018/02/09(金) 14:00:44.92:9++GRmyG Rust書いてると型合わせとかライフタイム調整とかくだらんことでコードの書き直しさせられて こういったうっかりバグを仕込む率が跳ね上がる Cなら一発ですぱっと書けるから本質的ではない書き直しがないので こういったミスを予防できる訳だ : デフォルトの名無しさん [sage] 2018/02/09(金) 14:59:07.92:dAvEJAa9 人間がやるかコンパイラがやるか どちらも完璧ではないですが、どちらを信頼しますか これだけやろ、何と戦ってるねん : デフォルトの名無しさん [sage] 2018/02/09(金) 15:14:42.41:SCMz9V3U いや、リソース管理分野のRustボローチェッカーは信頼しろよ ボローチェッカーに親を殺された子が、ボローチェッカーを許すRustユーザを逆恨みして戦ってるんでしょ
凡例:
レス番
100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている
名前
名無しさん (青) → sage のレス
名無しさん (緑) → age のレス
ID
ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID
このページは2ch勢いランキング が作成したアーカイブです。削除についてはこちら 。