diff options
author | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2007-10-19 16:14:01 +0000 |
---|---|---|
committer | Rafael Garcia-Suarez <rgarciasuarez@gmail.com> | 2007-10-19 16:14:01 +0000 |
commit | c0c9754921cff41f01272ad5f3ac8432692dda19 (patch) | |
tree | 31bea9ccc5bdf41145d30e4bde80db55ab4d2aba /pod | |
parent | 7303322e8eea0327f60b8d4557cadc1e00e4f2d7 (diff) | |
download | perl-c0c9754921cff41f01272ad5f3ac8432692dda19.tar.gz |
More perldelta work (info from perl59[01]delta)
p4raw-id: //depot/perl@32147
Diffstat (limited to 'pod')
-rw-r--r-- | pod/perl5100delta.pod | 79 |
1 files changed, 79 insertions, 0 deletions
diff --git a/pod/perl5100delta.pod b/pod/perl5100delta.pod index 9754ea0f93..6b91800d5d 100644 --- a/pod/perl5100delta.pod +++ b/pod/perl5100delta.pod @@ -585,16 +585,95 @@ space and speed penalties; moreover not all regression tests still pass with it. (Larry Wall, Nicholas Clark) =head1 Modules and Pragmata + =head1 Utility Changes + +=over 4 + +=item * + +The Perl debugger can now save all debugger commands for sourcing later; +notably, it can now emulate stepping backwards, by restarting and +rerunning all bar the last command from a saved command history. + +It can also display the parent inheritance tree of a given class, with the +C<i> command. + +Perl has a new -dt command-line flag, which enables threads support in the +debugger. + +=back + =head1 New Documentation + +The long-existing feature of C</(?{...})/> regexps setting C<$_> and pos() +is now documented. + =head1 Performance Enhancements + +Sorting arrays in place (C<@a = sort @a>) is now optimized to avoid +making a temporary copy of the array. + +Access to elements of lexical arrays via a numeric constant between 0 and +255 is now faster. (This used to be only the case for global arrays.) + =head1 Installation and Configuration Improvements + =head1 Selected Bug Fixes + +C<strict> wasn't in effect in regexp-eval blocks (C</(?{...})/>). + =head1 New or Changed Diagnostics + +A new deprecation warning, I<Deprecated use of my() in false conditional>, +has been added, to warn against the use of the dubious and deprecated +construct + + my $x if 0; + +See L<perldiag>. Use C<state> variables instead. + =head1 Changed Internals + +=head2 Reordering of SVt_* constants + +The relative ordering of constants that define the various types of C<SV> +have changed; in particular, C<SVt_PVGV> has been moved before C<SVt_PVLV>, +C<SVt_PVAV>, C<SVt_PVHV> and C<SVt_PVCV>. This is unlikely to make any +difference unless you have code that explicitly makes assumptions about that +ordering. (The inheritance hierarchy of C<B::*> objects has been changed +to reflect this.) + +=head2 Removal of CPP symbols + +The C preprocessor symbols C<PERL_PM_APIVERSION> and +C<PERL_XS_APIVERSION>, which were supposed to give the version number of +the oldest perl binary-compatible (resp. source-compatible) with the +present one, were not used, and sometimes had misleading values. They have +been removed. + +=head2 Less space is used by ops + +The C<BASEOP> structure now uses less space. The C<op_seq> field has been +removed and replaced by the one-bit fields C<op_opt>. C<op_type> is now 9 +bits long. (Consequently, the C<B::OP> class doesn't provide an C<seq> +method anymore.) + +=head2 New parser + +perl's parser is now generated by bison (it used to be generated by +byacc.) As a result, it seems to be a bit more robust. + =head1 New Tests + =head1 Known Problems + +There's still a remaining problem in the implementation of the lexical +C<$_>: it doesn't work inside C</(?{...})/> blocks. (See the TODO test in +F<t/op/mydef.t>.) + =head1 Platform Specific Problems + =head1 Reporting Bugs =head1 SEE ALSO |