[過去ログ] Rust part24 (1002レス)
前次1-
抽出解除 レス栞

このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
127: デフォルトの名無しさん [sage] 2024/06/14(金) 17:29:32.96 ID:97A5EwfU(1) AAS
C++を安全にしようとすると標準ライブラリの各インターフェースから全て作り直しとなり
標準でないライブラリも同様なので既存のコード資産は使えず全面書き直しとなってしまう
それだけでは済まなくて互換性のない言語仕様も取り入れないといけない
なんとか手間暇かけてそこまで頑張って安全なC++ができあがっても何の意味もメリットも無くなってることに誰もが気付いた
272
(1): デフォルトの名無しさん [] 2024/06/20(木) 08:54:48.96 ID:r+KYpvqW(1/3) AAS
Haskellはもっと高速に動作するようにしてくれ
286: デフォルトの名無しさん [sage] 2024/06/20(木) 19:39:05.96 ID:sFnTxIc/(2/2) AAS
>>284
284(1): デフォルトの名無しさん [sage] 2024/06/20(木) 19:23:04.79 ID:XVLgMtD/(1/2) AAS
>>280
Lisp
Lispは衛生マクロではないため失格
314: デフォルトの名無しさん [] 2024/06/23(日) 09:12:12.96 ID:2+8typ11(1) AAS
>>308
308(2): デフォルトの名無しさん [] 2024/06/22(土) 22:33:47.59 ID:dw6Bjmix(1) AAS
>>304
Clippyは知らないが、自分のAIの使い方だとPythonでサンプルコードを書いて、Javaなりに変換するようにAIに投げる。
意図と違ったらその都度、こう直してって書いて微調整していく。って感じ。

Rustとかは雑誌の入門記事しか読んでないのに、関数型プログラミングバリバリのコードが出てきた。
(とはいえ元からPythonを意識した文法だったので、ほぼそのまんま)

fn main() {
for file_name in std::env::args().skip(1) {
println!("{}", file_name);
if let Ok(lines) = std::fs::read_to_string(&file_name) {
for (i, line) in lines.lines().enumerate() {
println!("{:>2}:{}", i + 1, line);
}
}
}
}
clippyは公式のコード改善ツールだよ
コンパイラはエラーと警告だけ出すけど、clippyはそれ以上のヒントをくれる
例えば「コンテナ中に条件を満たす要素があるかどうか」をチェックするために items.iter().find(条件).is_some() のようなコードを書いたら、それに対し items.iter().any(条件) というシンプルな書き方を提案してくれる
こういう関数や構文の置き換えを含む提案をしてくれるツールで、これがコンパイラと同じ標準機能として備わってる (追加インストール不要) のが便利
559
(2): デフォルトの名無しさん [sage] 2024/07/02(火) 10:27:11.96 ID:LnXo4/R2(1/2) AAS
>>538
538(1): デフォルトの名無しさん [sage] 2024/07/01(月) 14:22:14.04 ID:seu0xN2c(1/2) AAS
Resultを返すか返さないか関係なくこれは常に成り立つね

>>534
> 以下の二つは同等
> result.map(|val| f(val))
> result.and_then(|val| Ok(f(val)))

例えばf(val)がOptionを返したとしても成立するよ
result.and_then(|val| Ok(f(val)?))
とか
result.and_then(|val| Ok(f(val).unwrap()))
じゃなくて
result.and_then(|val| Ok(f(val)))
で良いのはなぜ?
前次1-
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル

ぬこの手 ぬこTOP 0.045s