Perl Advances onto Android
The Perl language has seen its latest release for the 5.X generation, with the language continuing to add new functionality and support for new platforms. The steady refinements demonstrate how Perl continues to make itself useful in numerous production environments.
Notably included with 5.20.0 is support for Android, Synology NAS boxes, and the Atari ST. Android users can build Perl for Android natively or through cross-compilation with 3 CPU architectures currently supported: ARM, MIPS, and X86. Perl 5.20.0 will run on Atari ST systems using the FreeMiNT operating system, demonstrating the language's ability to continute to spread to new environments.
This release is packed with various bug fixes, performance improvements, and deprecations. A sample of whats new includes:
- Perl is compiled with Unicode 6.3 support by default (can be recompiled for a previous Unicode release if needed)
- Consistent random number generator
- While not cryptographically secure, this new random number generator is now consistent across platforms (Windows, Linux, etc)
- Improved locale support for UTF-8 locales
- New slice syntax for arrays and hashes
- Better 64-bit support that allows arrays to utilize larger memory amounts when available
- Security fix – A fix has been made to negate the possibility of reading free()d memory during parsing
- The use of interpreter based threads is now discouraged as intended performance gains have not been realized
- Copy-on-write utilization for faster copying of large strings
- First iteration over a large hash is faster because it’s internal iterator state is now pre-allocated
Full details of this lengthy release are available via the Perl delta release notes.
If you would like to try out this release of Perl without affecting your system’s Perl installation, consider using the Perlbrew utility. It doesn’t require admin (root) access and allows you to run Perl locally without affecting system scripts or introducing unforeseen incompatibilities.
Tom Gilb & Kai Gilb Jan 26, 2015