ダブルダイアモンド演算子の導入など多数の機能強化が加わった「Perl 5.22」が登場

 Perl開発チームは6月1日、Perl 5系の最新安定版「Perl 5.22.0」を公開した。ダブルダイアモンド演算子の追加などコア機能を強化したほか、性能も改善した。

 Perl 5.22は、2014年5月末に公開されたPerl 5.20に続く最新の安定版。約1年の開発期間の結果となり、この間約94人の開発者から合計で59万行の変更が加わったと報告している。.pm, .t, .c, .hの各ファイルの変更は合計で37万行に及ぶという。

 新機能としてダブルダイアモンド演算子「<<>>」が加わった。既存のダイアモンド演算子「<>」と同様に利用できるものだが、ダイアモンド演算子の場合、引数として「>」などの一部の文字を特別な意味に解釈し、リダイレクトや外部プログラムの起動と行った処理を行ってしまう可能性があった。これは2引数のopen関数と同じ挙動だが、ダブルダイアモンド演算子ではこのような特別な文字解釈を行わない。これによって、より安全に処理を行えるという。

 また、4種類のビット演算子(&、|、^、~)について、それぞれのオペランドを数字と同じように一貫性を持たせる機能、そしてオペランドを文字列のように扱う4種類のドットがついた演算子(&.、|.、^.、~.)を実験的に導入した。

 正規表現では「\b」表現が加わったほか、括弧をキャプチャしない正規表現フラグとして「/n」フラグをサポートした。Unicode 7.0のサポートも加わっている。16進の浮動小数点表記のリテラルが加わり、無限とNaNの処理も強化した。また、リファレンスに割り当てることで変数とサブルーチンをエイリアス化できる機能が実験的に加わった。:constサブルーチン属性も実験導入し、定数関数をサポートした。

 これらに加え、セキュリティ、性能なども強化した。互換性のない変更も加わっている。一方で、CGIとModule::Buildの両モジュールはコアから削除されている。

The Perl Foundation
http://www.perl.org/