Re: a new version of perl for Windows

Thanks for that news, Octavian.

Do you know whether most existing Perl libraries will be compatible with
the new version, or in general, should one wait until a library
specifically says it is compatible?  Also, I'm curious what benefits you
personally find in the new version.

Jamal
On Wed, 19 Dec 2007, Octavian Rasnita wrote:

> Date: Wed, 19 Dec 2007 11:21:37 +0200
> From: Octavian Rasnita <orasnita@xxxxxxxxx>
> Reply-To: programmingblind@xxxxxxxxxxxxx
> To: programmingblind@xxxxxxxxxxxxx
> Subject: a new version of perl for Windows
>
> Perl 5.10.0 has been released today, the first in the 5.10.x major
> version series, after a five year long development process.
> Coincidentally today is also the 20th anniversary of the very first
> release of Perl 1 to the public.
>
> ----------------------------------------------------------------------
>
> ActiveState is pleased to announce ActivePerl 5.10.0 Build 1001, a
> complete, ready-to-install Perl distribution for Windows, Mac OS X,
> Linux, Solaris, and AIX.
>
> This build is based on the release version of Perl 5.10.0.
>
> For detailed information or to download this release, see:
>
> http://www.activestate.com/Products/activeperl
>
> New in ActivePerl 5.10.0 Build 1001
> ===================================
>
> Some exciting new features to look for:
>
> * The new switch statement and smart-match operator
>
>   The new smart-matching operator ~~ compares two expressions with each
>   other; the exact nature of the match is being determined by the types of
>   both expressions: matching a string and hash will return if the hash
>   contains a key equal to the string; matching a regular expression
>   against an array will return if any element of the array matched
>   successfully against the regexp etc.
>
>   The new switch statement will smart-match a single expression repeatedly
>   against a list of other expression until one matches. For example:
>
>     given($foo) {
>         when ("foo") {
>             say '$foo is the string "foo"';
>         }
>         when ([1,3,5,7,9]) {
>             say '$foo is an odd digit';
>             continue; # Fall through
>         }
>         when ($_ < 100) {
>             say '$foo is numerically less than 100';
>         }
>         default {
>             die q(I don't know what to do with $foo);
>         }
>     }
>
> * Defined-or operator
>
>   The new defined-or operator // allows you to write
>
>     $a // $b
>
>   instead of repeating the first argument as in
>
>     defined $a ? $a : $b
>
>   Also the statement
>
>     $c //= $d;
>
>   can now be used instead of
>
>     $c = $d unless defined $c;
>
> * Many improvements to the regular expression engine, including:
>
>   The regular expression engine is no longer recursive, meaning that
>   patterns that used to overflow the stack will either die with useful
>   explanations, or run to completion, which, since they were able to blow
>   the stack before, will likely take a very long time to happen.
>
>   - It is now possible to write recursive patterns that are easy to read
>     (for a regular expression), and are executed in an efficient manner.
>
>   - It is now possible to name capturing parenthesis in a pattern and
>     refer to the captured contents by name. The naming syntax is
>     (?<NAME>....). It's possible to backreference to a named buffer with
>     the \k<NAME> syntax. After the match the named capture groups are
>     accessible via the %+ hash:
>
>         my $value = "foo 42";
>         if ($value =~ /^(?<name>\w+) \s* (?<number>\d+)$/x) {
>             say "Name $+{name} and Number $+{number}";
>         }
>
>   - possessive quantifiers
>   - backtracking control verbs
>   - relative backreferences
>
> Other new features include:
>
> * new say() function
> * lexical $_ variable
> * _ prototype
> * UNITCHECK blocks
> * state variables
> * stacked filetest operators
> * byte-order modifiers for pack() and unpack()
>
> * Many bug fixes
> * Additional core modules
> * Extended documentation
>
> Download ActivePerl 5.10.0 Build 1001 now:
>
> http://www.activestate.com/Products/activeperl
>
> Getting Started
> ===============
>
> Whether you're a first-time user or a long-time fan, our free resources
> will help you get the most from ActivePerl.
>
> Mailing list archives:
>
> http://aspn.activestate.com/ASPN/Mail/Browse/Threaded/ActivePerl
>
> Feedback
> ========
>
> Everyone is encouraged to participate in making Perl an even better
> language.
>
> For bugs related to ActiveState use:
>
> http://bugs.activestate.com/enter_bug.cgi?product=ActivePerl&version=1001
>
> For bugs related directly to Perl please use the 'perlbug' utility.
>
> Enjoy!
>
> _______________________________________________
> ActivePerl mailing list
> ActivePerl@xxxxxxxxxxxxxxxxxxxxxxxx
> To unsubscribe:
> http://listserv.ActiveState.com/mailman/mysubs
> Octavian
>
> __________
> View the list's information and change your settings at
> http://www.freelists.org/list/programmingblind
>
__________
View the list's information and change your settings at 
http://www.freelists.org/list/programmingblind

Other related posts: