新しいものを表示

rust-lang-ja.github.io/the-rus
まだ読みかけだけど、確かに便利そう><;
あと、"小休止:アンラップは悪ではない" の所の "パニックがプログラムのバグの兆候となるとき。" の記述が、
オレンジが書いた "むしろエラーの更なる先延ばしにしてるコードになるんじゃないのかなって気が><" に相当する場面?><

"// `haystack`(干し草の山)からUnicode文字 `n"(以下略)の所のコード、型がわかりにくい・・・><

orange さんがブースト

.? みたいな演算子は、フィールド参照にしか使えなくてロジックを繋げられないので、そこで if が必要になってしまうのがしょーもないという

orange さんがブースト

null か否かの確認は、続くロジックと合成可能な形で与えることで自然に記述できる、という話もあって、 Rust でのコンビネータはそれを支援しますし、あるいは Haskell の >>= なども (Maybe や Either については)そういう使い方になるかと

これの最初の例、Adaとかだと「部分範囲型を使え!! ていうか型作れ!!!」ってなるやつだ・・・><; -- rust-lang-ja.github.io/the-rus

orange さんがブースト

エラーハンドリング - rust-lang-ja.github.io/the-rus
ちょっと古いですが、これ読めば Rust での望ましいエラーの扱いはだいたいわかります

今まで「(nullやその代わりの準備出来てるかどうかの)チェックしないといけないようなコードは最小にせよ(最小にした上でどうしても残る部分はチェックする仕組みを活用して安全に)」って話だと思ってた><;

・・・という事は、
"(null安全がむしろnullとnullチェックを多用せよって話だとしたら別だけど><)"
って話っぽい・・・?><
mstdn.nere9.help/@orange_in_sp

「これの返り値の型は、チェックが必要なやつだぜ!!!」って使う人に教える仕組み・・・?><(言い換えるとそうじゃないやつを「これはいちいちチェックしなくてもだいじょうぶだよ!」って表現するためのもの・・・?><)

orange さんがブースト

Rust の Option と Result と ? 演算子は非常によくできているので参考になります(あるべき姿のひとつという感じ)

nullableなものでnullチェックしてないとコンパイル時にエラー出すのはまずわかる><(正しいと思う) でも、それでnullを避けて出来上がるコードって、むしろエラーの更なる先延ばしにしてるコードになるんじゃないのかなって気が>< ちょっと違うけど、空catchを多用してるみたいなコードになるんじゃないのかなって・・・><(null安全がむしろnullとnullチェックを多用せよって話だとしたら別だけど><)

orange さんがブースト

あれのそれはチェックを強制する仕組みを指している気がするのわよ

null安全の話で微妙にわからない点は、null許容型にnullを入れてる状態って、多くの場合「準備できてないです!><;」って表現の為に使われてると思うんだけど、そういうコードからnullを排除しても結局『「準備できているか?」のチェックが必要』 かつ 『怠ると実行時にエラー出しちゃう』点は変わらない気がするんだけど・・・><

orange さんがブースト
orange さんがブースト

愛生会病院、埼玉東部にあるので、行ったことはないけど目の前通った事は何回もある・・・><

orange さんがブースト
orange さんがブースト
古いものを表示
:realtek:

思考の /dev/null