v2.1.0: More modules and optimization
v2.1.0: More Modules, Improved Performance, and New Features
This release introduces new modules, optimizations, and extended feature support, further enhancing Perl's capabilities on the JVM.
Highlights
1. Getopt::Long Support:
The Getopt::Long module now runs seamlessly, requiring only a minor one-line change to avoid the "indirect object" syntax.
2. Efficient JSON Processing:
The JSON module leverages fastjson2 for fast encoding/decoding, while maintaining the familiar JSON.pm API from Perl.
3. Faster Output Processing:
Output to STDOUT and STDERR now occurs in a separate thread, reducing the main application's workload. This optimization delivers up to 2x faster terminal output compared to the previous version.
All Changes
1. New Modules:
- Getopt::Long
- JSON
2. Performance Enhancements:
- Optimized print for STDOUT/STDERR using multithreading.
3. New Features:
- Added the subs pragma.
- Added regex special variable $+.
- Added command-line switches: -v, -V.
- Added file test operators: -R, -W, -X, -O, -t.
- Added feature flag: evalbytes.
- Added support for CORE::GLOBAL and overriding core functions.
- Added support for hexadecimal floating-point numbers.
4. Internal Improvements:
- Introduced a new
io
module to support additional handle types.
This update represents another significant step in bringing a robust, efficient Perl implementation to the JVM.