2ch勢いランキング アーカイブ

プログラミング言語 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ユーザを逆恨みして戦ってるんでしょ

勢い5万以上のスレをメールでお知らせするサービス、実施中!!
憧れボディをGETしたい!その夢、ボニックで!

新着レスの表示

2ch勢いランキング アーカイブ プログラム板ランキング

凡例:

レス番

100 (赤) → 2つ以上レスが付いている
100 (紫) → 1つ以上レスが付いている

名前

名無しさん (青) → sage のレス
名無しさん (緑) → age のレス

ID

ID:xxxxxxx (赤) → 発言が3つ以上のID
ID:xxxxxxx (青) → 発言が2つ以上のID

このページは2ch勢いランキングが作成したアーカイブです。削除についてはこちら