bytes.pm will be deprecated in Perl 5.12
[追記]その後deprecated(廃止予定)ではなくstrongly discouraged(強く非奨励)に状態が改められたが、使用すべきでないという点は変わらない。[/追記]
bleadperlのコミットログを眺めていたところ,以下のような記述があった。
この件でTwitterで議論が起きたので,Togetterでまとめてみた。
要点をまとめると以下のようになる。
- Perlの文字列モデルを正しく理解していれば,bytes.pmを使う必要はない
- 入力されたデータををdecode,出力するデータをencodeする,というスタイルを採用すれば,bytes::lengthなどは必要ない
- 文字列モデルを意識しないまま,utf8のままのバイト長をbytes::lengthで取るのは逆に危険
- ただし,それでもbytes::length相当のものは必要という意見もある
こんなところか。deprecateの報を見て最初は驚いたが,いろいろな人の意見を聞いているとどうやら妥当な変更のようだ。
*1:まだrepository上での変更であり,「次の正規リリースでdeprecatedになる見込み」が正しい