[過去ログ] Rust part21 (1002レス)
上下前次1-新
抽出解除 レス栞
このスレッドは過去ログ倉庫に格納されています。
次スレ検索 歴削→次スレ 栞削→次スレ 過去ログメニュー
13: デフォルトの名無しさん [sage] 2023/08/15(火) 23:58:35.36 ID:VMFxj0+I(2/2) AAS
>>99(2): デフォルトの名無しさん [] 2023/08/15(火) 23:39:08.27 ID:DA+GIfRF(1) AAS
>>8
日本語訳のみを参照して質問したり議論するやつが多々いて日本語訳の精査や日本語訳の不味さの議論に発展するから「このスレでは非公式日本語訳については扱わずドキュメント参照時は公式ドキュメント(英語のみ)を参照すること」という結論に至った
Rustの中身と関係ないレスが必要になるから
善良なスレ民みんなが迷惑する話
そんな結論は出ていない
リンクがあって困るやつもいない
95: デフォルトの名無しさん [sage] 2023/09/03(日) 00:45:48.36 ID:HRiHoELW(4/4) AAS
既視感の正体
2chスレ:tech
2chスレ:tech
202: デフォルトの名無しさん [] 2023/09/14(木) 18:18:10.36 ID:uElhXa+m(1/2) AAS
JetBrains から RustRover 出たね。まだプレビュー版だけど。その代わり無料だ。
210(2): デフォルトの名無しさん [] 2023/09/15(金) 12:52:21.36 ID:FLL155po(2/2) AAS
情報密度が違っててワロス
外部リンク:www.ossnews.jp
237: デフォルトの名無しさん [sage] 2023/09/16(土) 00:03:10.36 ID:e71CP5Wp(1) AAS
>>234234(2): デフォルトの名無しさん [sage] 2023/09/15(金) 23:59:25.63 ID:cnhK/Rr/(2/2) AAS
let (foo, ref mut bar) = とかよく使うもんね
mutやrefが分離キーワードになっているRustが便利
いや、今となってはrefはほとんど使わん
291(1): デフォルトの名無しさん [] 2023/09/18(月) 17:52:28.36 ID:yZdHYJJu(1) AAS
>>283>もういっそCの方がきれいで
前置宣言だからそれは無い。
425: デフォルトの名無しさん [sage] 2023/10/07(土) 00:34:46.36 ID:Hyqci1qG(1) AAS
関数型というよりはリスト型言語だな
543(1): 453 [sage] 2023/10/24(火) 00:55:17.36 ID:Ei0IGfb9(1) AAS
>>500500(3): デフォルトの名無しさん [sage] 2023/10/15(日) 09:39:38.68 ID:M8zy/AR3(1) AAS
Cで書いたプログラムを Rustで書いたらこうなります
っていうのをひたすら集めた本がほしい
今度は逆にrustで書いたもの>>453453(6): デフォルトの名無しさん [sage] 2023/10/08(日) 18:19:11.05 ID:WAd1DVRF(3/3) AAS
enumのリストで書いてみたわ
rust不慣れだから所々おかしいかも
外部リンク:ideone.com
enum List<T> {
Cons(T, Box<List<T>>),
Nil,
}
impl<T: Copy + PartialOrd> List<T> {
// 略
fn qsort(&self) -> Self {
match self {
List::Nil => List::Nil,
List::Cons(pivot, tail) => {
let (smaller, rest) = tail.partition(|x| *x < *pivot);
smaller.qsort().concat(&rest.qsort().prepend(*pivot))
}
}
}
}
fn main() {
let list = List::<i32>::nil().prepend(4).prepend(8).prepend(8).prepend(3).rev();
list.each(|n| print!("{}", n));println!("");
list.qsort().each(|n| print!("{}", n));println!("");
}
をcで書いてみた
外部リンク:ideone.com
・参照透過性は考慮していない
・型のパラメータ化?には挑戦してない
・パターンマッチ再現?にも挑戦してない
・クロージャが欲しいところには呼び出し元の文脈を手渡して誤魔化す
・グローバル変数一個使ってノードの再利用を試みてる
・とにかくlist_qsort内部がそれっぽい感じの手順になってたらヨシ
struct node {
int value;
struct node *next;
};
struct node *list_qsort(const struct node *list) {
int pivot;
struct node *sorted = 0, *tail, *smaller, *rest, *a, *b;
if (list) {
pivot = list->value, tail = list->next;
list_partition(&pivot, less_than_context, tail, &smaller, &rest);
sorted = list_append(a = list_qsort(smaller), b = list_cons(pivot, list_qsort(rest)));
list_available_push_all4(smaller, rest, a, b);
}
return sorted;
}
660: デフォルトの名無しさん [sage] 2023/12/26(火) 09:58:50.36 ID:4qW9SvtE(1/2) AAS
Rustの要であるfutures futures-coreなども0.3のままだな
hyperは先月ようやく正式1.0になり先週1.1になった
h2が0.3から0.4に上がった
861(1): デフォルトの名無しさん [sage] 2024/01/15(月) 09:26:21.36 ID:87NFfbL3(1) AAS
C/C++のconstとRustのletを対比するなよ
コンパイル時の定数と変数は違うから
上下前次1-新書関写板覧索設栞歴
スレ情報 赤レス抽出 画像レス抽出 歴の未読スレ AAサムネイル
ぬこの手 ぬこTOP 0.034s