競え
※前スレ
C++ vs Rust
https://mevius.5ch.net/test/read.cgi/tech/1619219089/
探検
C vs C++ vs Rust Part.2
■ このスレッドは過去ログ倉庫に格納されています
1デフォルトの名無しさん
2021/12/15(水) 12:35:50.91ID:biBE4xC02デフォルトの名無しさん
2021/12/15(水) 12:36:12.51ID:biBE4xC0 たったぞ
3デフォルトの名無しさん
2021/12/15(水) 12:36:52.73ID:z10T13Tn C vs は余計だった
2021/12/15(水) 13:56:40.08ID:e2FwtkWT
Cに原点回帰しようよ
2021/12/15(水) 13:57:35.77ID:Z/edc862
GoはC++というよりCっぽいよな
2021/12/15(水) 14:37:20.55ID:30tmY3QB
Goはモダン言語にアレルギー反応が出てしまうC老人のための言語
2021/12/15(水) 16:01:42.93ID:pLz5Pfsh
顔真っ赤な怒り心頭Rustオジサンがなぜかスレタイに無いGoを粘着でディスり続ける
2021/12/15(水) 16:09:17.23ID:IT6MYik3
言語仕様が優れてるとかなんとかはあるだろうけど
結局使いものになる言語は何かと言われればC/C++なんだよ
結局使いものになる言語は何かと言われればC/C++なんだよ
2021/12/15(水) 16:23:40.38ID:Il5L6NWm
Rustは流行りもの
C、C++は基本
C、C++は基本
2021/12/15(水) 17:32:42.49ID:sKDBKV7A
RustとC++が互いに馬鹿にし合うのをCが高みの見物するスレですか?
2021/12/15(水) 18:10:14.36ID:t4BO72er
CやC++なんて、UNIXかWindowsが成功してなきゃ流行ってたわけない
(そもそもUNIXがないなら、C言語も生まれてないけど)
結局は勝ち組プラットフォームにおんぶにだっこされてるだけよ
Rustも巨大企業に推されて採用されてるから、優れてる言語かどうかに関係なく流行る
流行は巨人が決めてる
(そもそもUNIXがないなら、C言語も生まれてないけど)
結局は勝ち組プラットフォームにおんぶにだっこされてるだけよ
Rustも巨大企業に推されて採用されてるから、優れてる言語かどうかに関係なく流行る
流行は巨人が決めてる
2021/12/15(水) 18:23:30.40ID:EKKmEU1R
Rustンサーガ
パンツ一丁でオッサンが闘うヤツ
パンツ一丁でオッサンが闘うヤツ
2021/12/15(水) 18:49:53.25ID:8Epoo61s
本当のプログラマはPascalを使う
2021/12/15(水) 19:02:30.51ID:mn4aHBsE
May the FORTH be with you.
2021/12/15(水) 19:10:44.73ID:WtUWAuhG
いまだに組み込みはCオンリーですが、「UNIXがないなら、C言語も生まれてない」は間違いに近い
https://ja.wikipedia.org/wiki/C言語#歴史
https://ja.wikipedia.org/wiki/C言語#歴史
16デフォルトの名無しさん
2021/12/15(水) 19:15:49.17ID:A/sMbUcd >>8
でもチーム開発するならRustの安全性は100%じゃないとしても十分魅力的だなぁと思う。
でもチーム開発するならRustの安全性は100%じゃないとしても十分魅力的だなぁと思う。
17デフォルトの名無しさん
2021/12/15(水) 19:21:40.26ID:A/sMbUcd18デフォルトの名無しさん
2021/12/15(水) 19:59:26.95ID:pgpgQ+mf19デフォルトの名無しさん
2021/12/15(水) 20:02:20.26ID:pgpgQ+mf RustやRubyは、まず伝道師から始まるからな。
どういうわけか伝道師が大量発生する。
どういうわけか伝道師が大量発生する。
20デフォルトの名無しさん
2021/12/15(水) 20:03:30.36ID:pgpgQ+mf C++使いがコード書いてる間、彼らは伝道する。
神の使いなのかもしれんな。
啓示があったんだろう。
神の使いなのかもしれんな。
啓示があったんだろう。
2021/12/15(水) 20:08:47.10ID:KpHwa+U5
Rustは実用に主眼を置いた泥臭い言語なので
伝道師の言う美辞麗句は無視してよい
伝道師の言う美辞麗句は無視してよい
22デフォルトの名無しさん
2021/12/15(水) 21:48:54.34ID:A/sMbUcd っつか、いくら伝道師わいたってRust自身がその敷居の高さで安易に手を出すやつを排除するからRubyみたいには使われないんじゃねーの?
2021/12/16(木) 11:27:59.15ID:iS9fah9V
プログラミング勉強のため素数列を返すイテレータ関数を作ってみました
今回トレイト境界は0と1とoverflow防止足し算と比較演算子のみとなりました
use itertools::{unfold, Unfold};
fn prime<T>() -> Unfold<T, impl FnMut(&mut T) -> Option<T>>
where T: Copy + num::Zero + num::One + num::CheckedAdd + std::cmp::PartialOrd,
{
unfold(T::one(), |a| {
unfold(*a, |b| { if let Some(c) = b.checked_add(&T::one()) { *b = c; Some(c) } else { None } }).map(|b| { *a = b; b })
.find(|b| !unfold(T::one(), |c| { if let Some(d) = c.checked_add(&T::one()) { *c = d; if d < *b { Some(d) } else { None } } else { None }})
.find(|c| unfold(T::zero(), |d| { if let Some(e) = d.checked_add(c) { *d = e; if e <= *b { Some(e) } else { None } } else { None } }).any(|d| d == *b)).is_some())
})
}
型指定で『i8』(符号付き8bit整数)を与えて実行してみます
fn main() {
for p in prime::<i8>() {
print!("{} ", p);
}
}
出力結果
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127
i8型は127が上限値(2^7-1)なので上手く動作してるようです
コードが少し長くなってしまったので冗長なところや改善点など教えていただけると幸いです
今回トレイト境界は0と1とoverflow防止足し算と比較演算子のみとなりました
use itertools::{unfold, Unfold};
fn prime<T>() -> Unfold<T, impl FnMut(&mut T) -> Option<T>>
where T: Copy + num::Zero + num::One + num::CheckedAdd + std::cmp::PartialOrd,
{
unfold(T::one(), |a| {
unfold(*a, |b| { if let Some(c) = b.checked_add(&T::one()) { *b = c; Some(c) } else { None } }).map(|b| { *a = b; b })
.find(|b| !unfold(T::one(), |c| { if let Some(d) = c.checked_add(&T::one()) { *c = d; if d < *b { Some(d) } else { None } } else { None }})
.find(|c| unfold(T::zero(), |d| { if let Some(e) = d.checked_add(c) { *d = e; if e <= *b { Some(e) } else { None } } else { None } }).any(|d| d == *b)).is_some())
})
}
型指定で『i8』(符号付き8bit整数)を与えて実行してみます
fn main() {
for p in prime::<i8>() {
print!("{} ", p);
}
}
出力結果
2 3 5 7 11 13 17 19 23 29 31 37 41 43 47 53 59 61 67 71 73 79 83 89 97 101 103 107 109 113 127
i8型は127が上限値(2^7-1)なので上手く動作してるようです
コードが少し長くなってしまったので冗長なところや改善点など教えていただけると幸いです
2021/12/16(木) 14:51:19.13ID:fwM+9qOy
クソコード過ぎでこんなの誰も見ないよ
2021/12/16(木) 15:20:11.27ID:iS9fah9V
>>24
良いコードをご教授していただけませんか?
普通にループは使わずに足し算と比較のみで素数をその型の上限まで返すイテレータ関数です
言語はCでもC++でもRustでも構いませんのでよろしくお願いします
良いコードをご教授していただけませんか?
普通にループは使わずに足し算と比較のみで素数をその型の上限まで返すイテレータ関数です
言語はCでもC++でもRustでも構いませんのでよろしくお願いします
2021/12/16(木) 15:29:32.29ID:Hlz92r+j
Playgroundでu16に変えたらTLEした
2021/12/16(木) 15:38:05.88ID:iS9fah9V
2021/12/16(木) 15:59:44.48ID:V9bBAe8M
Rustのコードはなに見てもきたねぇな
2021/12/16(木) 16:08:39.90ID:iS9fah9V
>>29
それは私がプログラミング勉強中だからだと思います
あるいはCやC++ならば「ループを使わずに足し算と比較のみで素数をその型の上限まで返すイテレータ関数」を
綺麗にプログラミングできますか?
綺麗なコードをご教示していただけるとうれしいです
それは私がプログラミング勉強中だからだと思います
あるいはCやC++ならば「ループを使わずに足し算と比較のみで素数をその型の上限まで返すイテレータ関数」を
綺麗にプログラミングできますか?
綺麗なコードをご教示していただけるとうれしいです
2021/12/16(木) 17:08:55.09ID:3qs6QL/g
>>23
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=3e0c372e78ce024307bd58c1f03df55e
.find(..).is_some() は .any() と書ける (これはclippyが指摘してくれる)
if let Some(x) = expr { .. } else { None } は let x = expr?; .. とした方がネストが浅くなる
類似の処理は名前をつけて関数に括りだした方がわかりやすい
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=3e0c372e78ce024307bd58c1f03df55e
.find(..).is_some() は .any() と書ける (これはclippyが指摘してくれる)
if let Some(x) = expr { .. } else { None } は let x = expr?; .. とした方がネストが浅くなる
類似の処理は名前をつけて関数に括りだした方がわかりやすい
2021/12/16(木) 17:33:56.80ID:3qs6QL/g
>>23
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=6d5f63ffe7c46236a0957017db33a0b9
もう少し改善できた
スレ汚しすまん
https://play.rust-lang.org/?version=stable&mode=debug&edition=2021&gist=6d5f63ffe7c46236a0957017db33a0b9
もう少し改善できた
スレ汚しすまん
2021/12/16(木) 17:35:37.19ID:M/ZR00Mb
34デフォルトの名無しさん
2021/12/16(木) 18:18:18.75ID:OBc86cw835デフォルトの名無しさん
2021/12/16(木) 18:19:05.42ID:OBc86cw8 rustのコードはc/c++以上に見苦しい
こんな言語を業界全体でプッシュしてるのは異常だよ
こんな言語を業界全体でプッシュしてるのは異常だよ
2021/12/16(木) 18:37:24.71ID:3qs6QL/g
>>35
どの業界の話だよ
どの業界の話だよ
2021/12/16(木) 18:55:01.30ID:7LXHVZ3Z
日本のC++業界だよ
2021/12/16(木) 19:06:28.01ID:0UZhzBxa
なんでこいつRustの本スレでやらないんだろ、ほんまキモイ
2021/12/16(木) 19:15:09.93ID:bRADTu+t
本スレで自己満足やられて本気でウザかったからここでいいよ
■ このスレッドは過去ログ倉庫に格納されています
ニュース
- 【制服】中高生の「制服代」が中1は約8000円、高1は約1万円上昇…授業料無償でも重い「教育費の家計負担」とどう向き合えばいい? [少考さん★]
- 【東京】赤坂サウナ火事2人死亡 サウナ室のドアノブ外れ閉じ込められた可能性 ★8 [nita★]
- EU、エンジン車禁止見直しへ 35年以降も条件付き販売容認―日本勢に追い風 [蚤の市★]
- 中国国防省が再反論 SNSで公開した音声とは“別の通報”で日本に訓練の時間や海域を通報したと主張★4 [夜のけいちゃん★]
- 「机の裏に変なものがくっついてる!」「ほんとだね(カメラ回収)」→6日後に男性教員(40)を逮捕「10年以上前から女児盗撮繰り返した」 [Hitzeschleier★]
- 【ドアノブ外れ】東京・赤坂の“個室サウナ店夫婦死亡火災” 非常用ボタンの電源が切れていた可能性 [nita★]
- どうせこれもベトナム人
- 🏡👊😅👊なにここ珍百景👊😅👊🏡
- テストケース作るの楽しい
- 高市早苗「国連で中国がまた撤回しろ言ってきたからその場で反論したった」反論内容が全然反論になってない件 [624898991]
- たまにAV女優にガチ恋してる人いるでしょ
- 檜山沙耶(おさや)「夫にダメ出しばかりされて、疲れちゃったな…😢」離婚危機か? [153490809]
