Perl 5.X世代の最新リリースが登場した。引き続き、新しい機能の追加と新しいプラットフォームのサポートがなされている。この着実な改善は、Perlがいかに多数のプロダクション環境で有用であり続けているかを示すものだ。
とりわけ、5.20.0にはAndroid、Synology NASボックス、Atari STのサポートが含まれている。 AndroidユーザはPerlをAndroid向けにネイティブにビルドするここともできるし、現在サポートされている3つのCPUアーキテクチャ(ARM、MIPS、X86)にクロスコンパイル経由でビルドすることもできる。Perl 5.20.0はFreeMiNTオペレーティングシステムを使ったAtari STシステムでも動作するようになり、言語として新たな環境に対応し続けている。
このリリースには、さまざまなバグ修正、性能改善、廃止予定が含まれている。変更点としては以下が含まれる。
- デフォルトでUnicode 6.3サポート付きでコンパイルされる (必要なら、以前のUnicodeリリース向けに再コンパイルすることも可能)
- 一貫性のある乱数生成器
- 暗号論的に安全になるわけではないが、これによってプラットフォーム (Windows、Linuxなど) を通して一貫性のある乱数生成器を使うようになる
- UTF-8ロケールに関するロケールサポートの改善
- 配列とハッシュのための新しいslice構文
- 使用可能であれば配列が大きなメモリを活用できるよう、64-bitサポートの改善
- セキュリティ修正 – パース中にfree()されたメモリを読み込む可能性をなくした
- 廃止予定
- 意図した性能向上が実現されなかったので、インタプリタベースのスレッドの使用は非推奨となった
- 性能改善
- 大きな文字列のコピーを高速にするコピーオンライト機能の利用
- 内部イテレータ状態が事前に割り当てられるようになったので、大きなハッシュの最初のイテレーションが高速になった
- 大きな文字列のコピーを高速にするコピーオンライト機能の利用
このリリースに関する詳細な情報については、Perl deltaリリースノートを参照。
お使いのPerl環境に影響を与えずに、このリリースを試したければ、Perlbrewユーティリティの利用を検討しよう。これはadmin (root)アクセスを必要とせず、システムスクリプトに影響を与えたり予期せぬ非互換性をもたらすことなく、Perlをローカルで実行することを可能にする。