X-Git-Url: http://git.shadowcat.co.uk/gitweb/gitweb.cgi?a=blobdiff_plain;f=pod%2Fperltodo.pod;h=23fd3f585d7cceb239dce2feba4341661a582e22;hb=c9e30dd8153632a4205f5780cc54d922f26feb15;hp=1fc0afa57ff40a34313e599e41a0dfa60fcd0b00;hpb=89007cb3b367466c897ea44de3bf589824f66dd6;p=p5sagit%2Fp5-mst-13.2.git diff --git a/pod/perltodo.pod b/pod/perltodo.pod index 1fc0afa..23fd3f5 100644 --- a/pod/perltodo.pod +++ b/pod/perltodo.pod @@ -27,6 +27,11 @@ it would be a good thing. Fix (or rewrite) the implementation of the C closures. +=head1 A re-entrant regexp engine + +This will allow the use of a regex from inside (?{ }), (??{ }) and +(?(?{ })|) constructs. + =head1 pragmata =head2 lexical pragmas @@ -137,6 +142,14 @@ O.pm/B.pm backend framework depends on it. Make the peephole optimizer optional. +=head2 You WANT *how* many + +Currently contexts are void, scalar and list. split has a special mechanism in +place to pass in the number of return values wanted. It would be useful to +have a general mechanism for this, backwards compatible and little speed hit. +This would allow proposals such as short circuiting sort to be implemented +as a module on CPAN. + =head2 lexical aliases Allow lexical aliases (maybe via the syntax C. @@ -171,11 +184,6 @@ Clean these up. Move them to mathom.c, and don't compile for blead? The old perltodo notes "This has been done in places, but needs a thorough code review. Also fchdir is available in some platforms." -=head2 foreach reverse - -The old perltodo notes that we could optimise foreach to iterate in reverse. -(instead of making a reversed copy on the stack) - =head1 Tests =head2 Make Schwern poorer @@ -267,7 +275,7 @@ for example POSIX passes Exporter some very memory hungry data structures. =head2 Optimize away @_ -The old perltodo notes "Look at the "reification" code in C" +The old perltodo notes "Look at the "reification" code in C". =head2 switch ops @@ -275,10 +283,23 @@ The old perltodo notes "Although we have C in core, Larry points to the dormant C and C ops in F; using these opcodes would be much faster." -** Attach/detach debugger from running program +=head2 Attach/detach debugger from running program The old perltodo notes "With C, you can attach the debugger to a running program if you pass the process ID. It would be good to do this with the Perl debugger on a running Perl program, although I'm not sure how it would be done." ssh and screen do this with named pipes in tmp. Maybe we can too. +=head2 A decent benchmark + +perlbench seems impervious to any recent changes made to the perl core. It would +be useful to have a reasonable general benchmarking suite that roughly +represented what current perl programs do, and measurably reported whether +tweaks to the core improve, degrade or don't really affect performance, to +guide people attempting to optimise the guts of perl. + +=head2 readpipe(LIST) + +system() accepts a LIST syntax (and a PROGRAM LIST syntax) to avoid +running a shell. readpipe() (the function behind qx//) could be similarly +extended.