This is a live mirror of the Perl 5 development currently hosted at https://github.com/perl/perl5
More perldelta entries
authorRafael Garcia-Suarez <rgarciasuarez@gmail.com>
Sun, 13 Aug 2006 12:44:18 +0000 (12:44 +0000)
committerRafael Garcia-Suarez <rgarciasuarez@gmail.com>
Sun, 13 Aug 2006 12:44:18 +0000 (12:44 +0000)
p4raw-id: //depot/perl@28700

pod/perl594delta.pod

index e926bc4..8d55104 100644 (file)
@@ -40,8 +40,30 @@ AUTOLOAD function, then $AUTOLOAD will be (correctly) tainted.
 
 =head2 state() variables
 
+A new class of variables has been introduced. State variables are similar
+to C<my> variables, but are declared with the C<state> keyword in place of
+C<my>. They're visible only in their lexical scope, but their value in
+persistent: unlike C<my> variables, they're not undefined at scope entry,
+and retain their previous value.
+
+To use state variables, one needs to enable them by using
+
+    use feature "state";
+
+or by using the C<-E> command-line switch in one-liners.
+
+See L<perlsub/"Persistent variables via state()">.
+
 =head2 UNIVERSAL:DOES()
 
+The C<UNIVERSAL> class has a new method, C<DOES()>. It has been added to
+solve semantic problems with the C<isa()> method. C<isa()> checks for
+inheritance, while C<DOES()> has been designed to be overriden when
+module authors use other types of relations between classes (in addition
+to inheritance).
+
+See L<< UNIVERSAL/"$obj->DOES( ROLE )" >>.
+
 =head1 Modules and Pragmata
 
 C<encoding::warnings> is now a lexical pragma. (Although on older perls,
@@ -79,6 +101,14 @@ provides low-level access to Win32 system API calls for files/dirs.
 
 =head1 Utility Changes
 
+=head2 config_data
+
+C<config_data> is a new utility that comes with C<Module::Build>. It
+provides a command-line interface to the configuration of Perl modules
+that use Module::Build's framework of configurability (that is,
+C<*::ConfigData> modules, that contain local configuration information for
+their parent modules.)
+
 =head1 Documentation
 
 =head2 New manpage, perlpragma
@@ -106,11 +136,11 @@ Regular expressions (Yves)
 
 =head2 Ports
 
-Perl has been reported to work on DragonFlyBSD.
-
 Many improvements have been made towards making Perl work correctly on
 z/OS.
 
+Perl has been reported to work on DragonFlyBSD.
+
 =head2 Compilation improvements
 
 All F<ppport.h> files in the XS modules bundled with perl are now
@@ -118,7 +148,7 @@ autogenerated at build time.
 
 =head2 New probes
 
-The configuration process now detects whether strlcat and strlcpy are
+The configuration process now detects whether strlcat() and strlcpy() are
 available.  When they are not available, perl's own version is used (from
 Russ Allbery's public domain implementation).  Various places in the perl
 interpreter now uses them.
@@ -138,13 +168,18 @@ filehandles.
 
 =head1 Changed Internals
 
-Arenas
-
-Mathoms and factorizations (many PP functions are now shared for several ops)
+A new file, F<mathoms.c>, contains functions that aren't used anymore in
+the perl core, but that remain around because modules out there might
+still use them. They come from a factorization effort: for example, many
+PP functions are now shared for several ops.
 
 =head1 Known Problems
 
-=head2 Platform Specific Problems
+One warning test (number 263 in F<lib/warnings.t>) fails under UTF-8
+locales.
+
+Bytecode tests fails under several platforms. Support for byteloader and
+compiler is considered to be removed before the 5.10.0 release.
 
 =head1 Reporting Bugs