Rustの感想2024
2024/12~頃
まだ、そこまでsyntaxを好きになれない
単純に理解が浅いからだけかも知れないmrsekut.icon
使用しているcrateのインターフェイスの問題かもしれない
そのへんの区別がまだついていない
なんか妙に冗長な見た目になる
扱っている対象の抽象度とか関係ない気がする
低レイヤを対象にしているから、とかは関係ない気がする
参照とかはそうだけど、そういう話でもない
code:rs
let mut form = multipart::Form::new()
.text("access_token", self.access_token.clone())
.part(
"imagedata",
multipart::Part::bytes(file_content)
.file_name(image_path.as_ref().to_str().unwrap().to_string()),
);
こういうのとか、単に値を渡したいだけなのに、色々変換かまさないといけないの冗長すぎる
rustのtraitのようなやつ
構造にmethodが生えて、selfを暗黙的に指定できるやつ
あれをhaskellのような純粋関数のシンプル文法に取り入れた文法を考えられないだろうか
状態を持つのとは別の話で
全てを関数で書くと
importが多くなる問題
そのデータ構造専用の関数、であることを明示しづらい問題
のようなのがある気がする
rustにおける状態のノリ
自分は、できるだけ状態を使わないimmutableなコードを書くのが好きだが、rsではどういう感じなんだろう
デフォルトでimmutableだったりして、そっち側に意識が寄っているのはわかるものの
traitに対してmethod生やす時に、mutableに値を保持すべきなのか、method呼ぶごとに新しいinstanceを作ってしまってもいいものなのか
あんまり富豪的にアロケートしまくるのは良いと思われてなさそうな気がするがどうなんだろ
Vecに対するsort()系のmethodが、基本的に破壊的なのとかあまり好きではない
rsの良さ感じつつも、好みな部分とそうじゃない部分がある
Stringやstrといった一見pritimitibeなものもちゃんとrsのルールの上で定義されている点
特別扱いされていない
hsも同じ
改めて、hsのsyntaxのすばらしさを感じる
必要最小限のルールで、めちゃくちゃ表現力が大きい
めっちゃ筋の良い抽象化をしてないとこんなことはできない