develooper Front page | perl.perl5.porters | Postings from March 2015

Re: OP_SIGNATURE

Thread Previous | Thread Next
From:
wolfsage
Date:
March 7, 2015 15:01
Subject:
Re: OP_SIGNATURE
Message ID:
CAJ0K8bixjmrQfL7Wp0iP6nXkjn4hp2ufA1PpUY86A7DdJyQRVw@mail.gmail.com
On Sat, Mar 7, 2015 at 7:29 AM, Paul "LeoNerd" Evans
<leonerd@leonerd.org.uk> wrote:
>   Can this entire OP_SIGNATURE feature be developed as a CPAN module?
>
> Namely, would it be possible for every ounce of optimisation provided
> by it to be applied to any program that simply started
>
>   perl -MDevel::Op::Signature ...
>
> If it can, then I vote that nobody would (or in fact could) stop DaveM
> from re-implementing it in that manner, and gaining every bit of
> runtime optimisation that he has repeatedly stated he wants,
> automatically on any 5.22 or even 5.20 program that wanted to opt-in
> simply by loading that module somewhere within it.

I think I would prefer to see these optimisations become a part of
core, tested and proven, and then be added to a CPAN module (or ported
to a new CPAN module) so that new Perls are always improving in terms
of performance, and old Perls can benefit by way of loading CPAN
modules.

Otherwise, we see new yearly releases of Perl5 that are just as slow
as previous versions unless you:

  use Devel::Op::Signature;
  use Devel::Op::ElideReturn;
  use Devel::Op::MultiDeref;
  use Devel::Op::Etc

This is *less* of a problem if there's a single module that compiles
these all together I suppose:

  use Perl::Optimisations;

But over time this could grow into a large module with so many
sub-dependencies (unless it actually absorbs all of the optimisations
instead of listing them as deps) that this will be less appealing to
some.

Also, if these modules need to be compiled as I suspect many of them
do, new Perl installations on systems that don't provide a compiler
won't be able to benefit. I admit I'm not sure how common this is
though.

If we do go the route of optimisations-on-CPAN only though; I think
we'd want to set up some sort of smoking system that doesn't rely on
BBC reports for these modules so we aren't making more work there, and
we'd also want to run all of the tests in the Perl distribution with
these modules loaded.

-- Matthew Horsfall (alh)

Thread Previous | Thread Next


nntp.perl.org: Perl Programming lists via nntp and http.
Comments to Ask Bjørn Hansen at ask@perl.org | Group listing | About