Beefy Boxes and Bandwidth Generously Provided by pair Networks
Keep It Simple, Stupid

PMC (Perl Module Compiled) survey

by Juerd (Abbot)
on Mar 12, 2006 at 15:31 UTC ( #536101=perlmeditation: print w/replies, xml ) Need Help??

Dear Perl User,

Will you help Perl 6 development by sending a single email?

There's a new trick in development to support combined use of Perl 6 and Perl 5. It uses the PMC (Perl Module Compiled) feature, that so far has not been used much.

However, it has come to our attention that some packagers have disabled this feature, by supplying the PERL_DISABLE_PMC flag, probably for the tiny performance overhead.

We're trying to find out how wide spread the use of this flag is. If we want upgrading to Perl 6 to be gradual, I think this it is essential to convince packagers that they need to change their defaults.

To test if your packager has disabled the feature explicitly,

perl -V:ccflags
and see if PERL_DISABLE_PMC is in there. So far, only Mandriva Linux uses it, to our knowledge. They have already agreed to change it in the next version.

To test if this feature works for your Perl, use:

echo print uc ok > pmctest.pmc perl -Mpmctest -le1
You should get "OK". Please send the output of the test and of "perl -V" to (even if it works), and let us know what platform you use.

You will not receive replies, and your address will not be used for any other purposes than to ask you more about this specific issue. When we're done, all messages will be removed.

Thank you for helping.


Freenode #perl6


  • This PMC has nothing to do with Parrot Magic Cookies
  • See for the guts of this hack
  • Filter::PMC is already renamed to Module::Compile
  • Changed "test" to "pmctest" because Win32 is case insensitive and the cwd is LAST in @INC
  • Please also mail the output of the test

Replies are listed 'Best First'.
Re: PMC (Perl Module Compiled) survey
by japhy (Canon) on Mar 12, 2006 at 17:10 UTC
    This isn't covered by the scope of your email request, so I'll mention it here:
    feather:~ 107:$ echo 'sub abc { }' > foo.pmc feather:~ 108:$ perl -Mfoo -le1 did not return a true value. BEGIN failed--compilation aborted.
    perl has incorrectly reported the name of the file as, not foo.pmc.

    Jeff japhy Pinyan, P.L., P.M., P.O.D, X.S.: Perl, regex, and perl hacker
    How can we ever be the sold short or the cheated, we who for every service have long ago been overpaid? ~~ Meister Eckhart

        Given what .pmc is for, I'd say reporting it on the .pm is correct. If you're abusing the mechanism, you get abusive error messages in return.

        Even in original intent of .pmc, both in the .pm and in the .pmc, (different) things can go wrong. And they should be reported from the right file. Especially reporting an error in a file that doesn't exist is a bit silly.

        For example, with the original Bytecode/Byteloader stuff, the PMC loads Byteloader with a version check. If that version check fails, the error is reported from the PM, which has nothing to do with the error. That makes debugging hard. Hiding the fact that there's another file involved, is bad.

        Juerd # { site => '', plp_site => '', do_not_use => 'spamtrap' }

Re: PMC (Perl Module Compiled) survey
by bliako (Monsignor) on Nov 21, 2020 at 13:25 UTC
    perl -Mpmctest -le1 Can't locate in @INC


    perl -I. -Mpmctest -le1 OK

Log In?

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: perlmeditation [id://536101]
Approved by integral
and the web crawler heard nothing...

How do I use this? | Other CB clients
Other Users?
Others taking refuge in the Monastery: (4)
As of 2021-09-24 19:26 GMT
Find Nodes?
    Voting Booth?

    No recent polls found