The London Perl and Raku Workshop takes place on 26th Oct 2024. If your company depends on Perl, please consider sponsoring and/or attending.

NAME

Module::Optimize - Perl Module Optimization

SYNOPSIS

package Foo;
use Module::Optimize -base;

sub pmc_optimize {
    my ($self, $source) = @_;
    # Convert perl5 $source into semantically equivalent $compiled_output
    return $compiled_output;
}

In Bar.pm:

package Bar;

use Foo;

or lexically:

package Bar;

{
    use Foo;
    ...
}

To compile Bar.pm into Bar.pmc:

perl -c Bar.pm

DESCRIPTION

This module provides a system for writing modules that compile other Perl modules.

Modules that use these compilation modules get compiled into some altered form the first time they are run. The result is cached into .pmc files.

Perl has native support for .pmc files. It always checks for them, before loading a .pm file.

You get the following benefits:

SEE ALSO

Module::Compile

AUTHORS

  • Ingy döt Net <ingy@cpan.org>

  • Audrey Tang <audreyt@audreyt.org>

COPYRIGHT AND LICENSE

Copyright 2006-2019. Ingy döt Net.

This program is free software; you can redistribute it and/or modify it under the same terms as Perl itself.

See http://www.perl.com/perl/misc/Artistic.html