$ # end of line
/x
-Note, users experienced with PCRE will find that the Perl implementation
-of this feature differs from the PCRE one in that it is possible to
-backtrack into a recursed pattern, whereas in PCRE the recursion is
-atomic or "possessive" in nature. (Yves Orton)
+PCRE users should note that Perl's recursive regex feature allows
+backtracking into a recursed pattern, whereas in PCRE the recursion is
+atomic or "possessive" in nature. As in the example above, you can
+add (?>) to control this selectively. (Yves Orton)
=item Named Capture Buffers
syntax. In code, the new magical hashes C<%+> and C<%-> can be used to
access the contents of the capture buffers.
-Thus, to replace all doubled chars, one could write
+Thus, to replace all doubled chars with a single copy, one could write
s/(?<letter>.)\k<letter>/$+{letter}/g
A new prototype character has been added. C<_> is equivalent to C<$> but
defaults to C<$_> if the corresponding argument isn't supplied. (both C<$>
-and <_> denote a scalar). Due to the optional nature of the argument, you
+and C<_> denote a scalar). Due to the optional nature of the argument, you
can only use it at the end of a prototype, or before a semicolon.
This has a small incompatible consequence: the prototype() function has
space and speed penalties; moreover not all regression tests still pass
with it. (Larry Wall, Nicholas Clark)
+=head2 kill() on Windows
+
+On Windows platforms, C<kill(-9, $pid)> now kills a process tree.
+(On UNIX, this delivers the signal to all processes in the same process
+group.)
+
=head1 Incompatible Changes
=head2 Packing and UTF-8 strings
=head2 Removal of the JPL
-The JPL (Java-Perl Linguo) has been removed from the perl sources tarball.
+The JPL (Java-Perl Lingo) has been removed from the perl sources tarball.
=head2 Recursive inheritance detected earlier
The L<perlreguts> manpage, courtesy of Yves Orton, describes internals of the
Perl regular expression engine.
+The L<perlreapi> manpage describes the interface to the perl interpreter
+used to write pluggable regular expression engines (by Ævar Arnfjörð
+Bjarmason).
+
The L<perlunitut> manpage is an tutorial for programming with Unicode and
string encodings in Perl, courtesy of Juerd Waalboer.
B<Note:> Much code exists that works around perl's historic poor
performance on alternations. Often the tricks used to do so will disable
the new optimisations. Hopefully the utility modules used for this purpose
-will be educated about these new optimisations by the time 5.10 is
-released.
+will be educated about these new optimisations.
=item Aho-Corasick start-point optimisation
When a pattern starts with a trie-able alternation and there aren't
-better optimisations available the regex engine will use Aho-Corasick
+better optimisations available, the regex engine will use Aho-Corasick
matching to find the start point. (Yves Orton)
=back
with various C++ compilers (although the situation is not perfect with
some of the compilers on some of the platforms tested.)
-=item Building XS extensions on Windows
-
-Support for building XS extension modules with the free MinGW compiler has
-been improved in the case where perl itself was built with the Microsoft
-VC++ compiler. (ActiveState)
-
=item Support for Microsoft 64-bit compiler
Support for building perl with Microsoft's 64-bit compiler has been
=head1 Changed Internals
-In general, the source code of perl has been refactored, tied up, and
-optimized in many places. Also, memory management and allocation has been
-improved in a couple of points.
+In general, the source code of perl has been refactored, tidied up,
+and optimized in many places. Also, memory management and allocation
+has been improved in several points.
+
+When compiling the perl core with gcc, as many gcc warning flags are
+turned on as is possible on the platform. (This quest for cleanliness
+doesn't extend to XS code because we cannot guarantee the tidiness of
+code we didn't write.) Similar strictness flags have been added or
+tightened for various other C compilers.
=head2 Reordering of SVt_* constants
instead of 3, now that pp_anonhash and pp_anonlist return a reference to
an hash/array when the op is flagged with OPf_SPECIAL (Nicholas Clark).
-=for p5p XXX have we some docs on how to create regexp engine plugins, since that's now possible ? (perlreguts)
-
=head1 Known Problems
There's still a remaining problem in the implementation of the lexical