Updated March 31, 2023
Introduction to Perl Versions
A stable programming language which can be used across different platforms is called Perl, also known as Practical Extraction and Report Language which is an open-source software falling under the license provided by Artistic License and so far Perl has evolved through different versions starting from Perl 1.0 in 1987 and the different versions of Perl are Perl 5.000, Perl 5.001, Perl 5.002, Perl 5.002_1, Perl 5.003, Perl 5.003_1, Perl 5.004, Perl 5.005, Perl 5.6.0, Perl 5.8.0, Perl 5.10.0, Perl 5.14.0, Perl 5.16.0, Perl 5.18.0, Perl 5.20.0, Perl 5.22.0, Perl 5.24.0, Perl 5.26.0, Perl 5.28.0.
Different Versions of Perl
The different versions of Perl are:
1. Perl 5.000
- It was introduced in October 17th, 1994.
- This version had the complete rewritten feature of the interpreter.
- This version had Objected.
- This versionReferences.
- This version supported Lexical variables.
- This version had modules using which the language could be extended without interpreter modifications.
2. Perl 5.001
- It was introduced in March 13th, 1995.
- It introduced two new hooks called $SIG{_WARN_} and $SIG{_DIE_}
- This version had closures.
- This version had routines imported as defined by counts for warnings of redef.
- This version had fixed for bugs.
3. Perl 5.002
- It was introduced in February 29th, 1996.
- This version introduced a new feature called prototypes.
- This version had upgraded to an extensive extent close to all the modules of Perl.
- This version had changes in a large extent to both configure and build systems.
- This version had fixes for bugs.
4. Perl 5.002_1
- It was introduced in March 25th, 1996.
- It introduced changes in a namespace that are embedded.
- This version introduced two new variables called magic variables, $^E and $^O.
- This version introduced a mechanism that had the applied patches list in the output of Perl -v.
- This version had fixes for several bugs and there were several miscellaneous changes.
- This version introduced minor and miscellaneous updates and corrections to the documentation.
- This version had updated to a greater extent to the ports of OS/2 and VMS.
5. Perl 5.003
- It was introduced in June 25th, 1996.
- This version had security fixes.
- This version had bugs fixes.
6. Perl 5.005
- It was introduced on July 22nd, 1998.
- It is not binary compatible with the other versions of Perl that were released previously.
- This version had the source code in ANSI C.
- This version supported new platforms like MPE/ix, DOS, BeOS, etc.
- This version supported EXPR foreach EXPR syntax and many experimental features.
- This version supported the abstraction of the Perl C++ object on windows 32-bit operating system.
- This version supported regular expressions that are precompiled.
- This version supported 64-bit windows operating system.
- This version provided signals that can be relied upon when the threading option is enabled.
- This version supported exception handling.
- This version had GCC/EGCS compilers supported to run on a 32-bit Windows operating system.
7. Perl 5.6.0
- It was introduced on March 22nd, 2000.
- This version had version number changes to the format “revision.version.subversion”.
- It discontinued the support of EBCDIC.
- It changed the strings representation internally to UTF-8.
- It supported the concurrency of an interpreter.
- This version had character ordinals to write the string literals.
- This version had attributes of subroutines written using the new syntax.
- This version supports large files.
- It supported binary numbers.
- This version had a distribution of Java Perl Lingo (JPL) merged with Perl.
- This version had new documentation as references and tutorials.
- This version had several experimental features.
- It supported Unicode.
- It supported threading and fork() emulation on windows.
- It supported a 64-bit Windows operating system.
- It supported the L value subroutines.
- It supported weak references.
- It supported data type pseudo hash.
8. Perl 5.8.0
- It was introduced in July 18th, 2002.
- It supported Unicode 3.2.0.
- This version had regular expressions working with Unicode.
- This version supported encodings in non-Latin through modules of encode.
- It introduced threads in an interpreter.
- This version had the new implementation of PerlIO.
- This version had improved accuracy for the conversion of string to number through built-in routines.
- This version supported 64-bit windows operating system.
- This version introduced new modules like File::Temp, Filter::Simple, etc.
9. Perl 5.10.0
- It was introduced in December 18th, 2007.
- It supported Unicode 5.0.
- It introduced a new feature called pragma.
- It introduced a new operator called or (//).
- This version introduced a new feature called switch and smart match operator (~~).
- This version introduced several features of regular expressions.
- This version introduced a new built-in feature called to say.
10. Perl 5.14.0
- It was introduced in May 14th, 2011.
- It supports Unicode 6.0.
- This version had the semantics of Unicode applicable to all strings.
- This version introduced a nondestructive substitution (s///r).
- This version of Perl introduced regular expressions that are re-entrant.
- This version of Perl had built-ins provided by automatic dereference.
11. Perl 5.16.0
- It was introduced in May 20th, 2012.
- This version introduced SUB which indicates the subroutine that is currently executing.
- It introduced encoding-disambiguated eval.
12. Perl 5.18.0
- It was introduced in May 18th, 2013.
- This version introduced character set operations of regular expressions.
- This version of Perl introduced lexical subroutines.
13. Perl 5.20.0
- It was introduced in May 27th, 2014.
- This version introduced signatures for subroutines.
- This version introduced the dereferencing of postfixes.
- This version of Perl introduced slice syntax for the key value.
14. Perl 5.22.0
- It was introduced in June 1st, 2015.
- This version supported Unicode 7.0.
- It removed the historical modules like CGI.pm, Module::Build, etc. from the core distribution.
- It introduced an operator called a double diamond operator.
- It introduced bitwise operators that are disambiguated.
- This version introduced the aliasing of variables.
15. Perl 5.24.0
- It was introduced in May 8th, 2016.
- This version of Perl supported Unicode 8.0.
- This version of Perl introduced a new line break boundary in regular expressions.
- This version of Perl introduced character classes with extended brackets that work in locales of UTF-8.
- This version of Perl had printf and sprintf with arguments reordered.
- This version of Perl had sigaction callback with more fields.
16. Perl 5.26.0
- It was introduced in May 30th, 2017.
- It removed the current directory from the end of the module search path.
- This version of Perl had lexical subroutines, but they are not experimental.
- This version of Perl had documents with indented-here.
- This version of Perl had capture groups and modifiers for regular expressions.
- It supported Unicode 9.0.
- This version of Perl had collation in locales of UTF-8 enabled.
17. Perl 5.28.0
- It was introduced in June 22nd, 2018.
- This version of Perl supported Unicode 10.0.
- This version of Perl had key-value hash slices with delete on.
- This version of Perl had synonyms alphabetically for regular expressions.
- This version of Perl could detect the Unicode scripts that are mixed.
- This version of Perl had safe in-place editing with Perl -i.
- This version of Perl had aggregate variables initialized.
- This version had inode numbers of full size.
- This version had sprintf %j format size modifier.
- This version had close-on-exec flag automatically set.
- This version had fixes in security.
Recommended Articles
This is a guide to Perl Versions. Here we also discuss the Introduction and top 17 versions of Perl along with features. You may also have a look at the following articles to learn more –