Unixのフィルタプログラムのような用途では標準入出力を流れるバイト列のエンコーディングを気にしなくても良い場合も多いと思うけど、Rustで文字列処理をしようとするとUTF-8としてのバリデーションが必要になりがちでアレみたいなところはありそう。`bstr`クレートみたいなものもあるけど、例えば`core::fmt`周りのコンパイラマジックをの恩恵を受けるにはやはり`str`が必要だし

フォロー

では標準の文字列型を`BStr`相当のものにしておけば良かったのかというと、それはそれで例えばJSONの書き出しのような本当にUTF-8が必要な処理で文字列リテラルを書き込むだけでバリデーションが発生するなどのつらみがありそうなので、はい。何なら必要なバリデーションを忘れるコードが氾濫するまでありそうだし

ログインして会話に参加
Fedibird

様々な目的に使える、日本の汎用マストドンサーバーです。安定した利用環境と、多数の独自機能を提供しています。