New here?I want to ask a question of the Perl Monks. Where do I start?

Notices:

hippoepoptai's answer Re: how do I set a cookie and redirect was blessed by hippo!
erzuuliAnonymous Monks are no longer allowed to use Super Search, due to an excessive use of this resource by robots.

If you're new here, please read PerlMonks FAQ
and Create a new user!

Quests
poll ideas quest 2026
Starts at: Jan 01, 2026 at 00:00
Ends at: Dec 31, 2026 at 23:59
Current Status: Active
0 replies by pollsters
    First, read How do I create a Poll?. Then suggest your poll here. Complete ideas are more likely to be used.

    Note that links may be used in choices but not in the title.

Perl News
Perl wisdom in the age of LLMs
on May 14, 2026 at 09:37
1 reply by reisinge
London Perl and Raku Workshop 2026 goes from Maybe to Likely
on Apr 27, 2026 at 09:01
0 replies by choroba
    The announcement

    Our love of Perl and Raku, means another London Perl and Raku Workshop is presently in the works for November 2026, with an exact date and venue to be confirmed in due course.

    map{substr$_->[0],$_->[1]||0,1}[\*||{},3],[[]],[ref qr-1,-,-1],[{}],[sub{}^*ARGV,3]
Supplications
Underscore in scalar name not in main package
5 direct replies — Read more / Contribute
by InfiniteSilence
on May 08, 2026 at 15:49

    So I am looking around in perlvar and I learn that if you preface a scalar variable name with an underscore it will by default be in the main package...wow, I think. I want to try that:

    perl -e 'package Nether; our $val = 2000; my $_nonesuch = 3000; packa +ge main; print __PACKAGE__ . qq~\t~ . $main::_nonesuch;'

    Makes: main

    What? ...what happened by my value? So I take away the package portion:

    perl -e 'package Nether; our $val = 2000; my $_nonesuch = 3000; packa +ge main; print __PACKAGE__ . qq~\t~ . $_nonesuch;'

    main 3000

    As an aside I should mention why I keep posting these cryptic things about basic Perl functionality. I am researching why people run into problems with Perl and give up. The target audience (for now) includes project management and product owners who have enough familiarity with the language to recommend its use but want to simultaneously reduce the backlash that might come from doing so.

    Celebrate Intellectual Diversity

perllocal EXE_FILES and %Config
1 direct reply — Read more / Contribute
by Anonymous Monk
on May 08, 2026 at 07:56
    I noticed some inconsistent entries in perllocal for modules that have EXE_FILES:

    Acme::MetaSyntactic (script/ is typical)
    EXE_FILES: script/meta script/metafy

    Pod::Parser
    EXE_FILES: scripts/podselect

    CGI-Kwiki
    EXE_FILES: inc/SCRIPTS/kwiki-install

    GD
    EXE_FILES: bdf_scripts/bdf2gdfont.pl

    App::FatPacker (bin/ is typical too)
    EXE_FILES: bin/fatpack

    Despite all that, everything listed as EXE_FILES ends up in the same directory, specified (on my system) by 12 %Config variables with the same exact value as $Config{bin}:

    /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin

    My question is this: do these 12 Config variables have the same value on all Perl installations? I guess there are actually 14 of these same vars, but the vendor values are blank on my system.

    Here's a little script to check. I'd like to know if these can be different values so I know which one(s) to use. Thanks in advance.

    #!/usr/bin/perl -l # Check if all the bin and script dirs in %Config are the same. use strict; use warnings; use Config; @_ = qw/bin binexp initialinstalllocation installbin installscript installsitebin installsitescript scriptdir scriptdirexp sitebin sitebinexp sitescript sitescriptexp vendorbin vendorbinexp/; printf "%-24s %-100s\n", $_, $Config{$_} for @_;
    Output on my system:
    bin                       /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    binexp                    /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    initialinstalllocation    /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    installbin                /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    installscript             /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    installsitebin            /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    installsitescript         /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    scriptdir                 /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    scriptdirexp              /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    sitebin                   /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    sitebinexp                /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    sitescript                /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    sitescriptexp             /Users/u/perl5/perlbrew/perls/perl-5.42.0/bin                                                    
    vendorbin                                                                                                                     
    vendorbinexp                                            
    
PerlMonks Discussions
Perlmonks.com and Perlmonks.net now redirect to Perlmonks.org
No replies — Read more | Post response
by erzuuli
on May 14, 2026 at 11:38

    Following up on Perlmonks.com and Perlmonks.net to redirect to Perlmonks.org

    Thanks to the support of Leo Lapworth, Olaf Alders, and Robert from Perl NOC, this site is now served from behind the Fastly CDN. The IP addresses have changed to Fastly IP addresses.

    The .com and .net domains redirect to perlmonks.org, to improve the caching of the pages.

    If you access the site logged in, you should see no difference, as the pages pass through directly to the main machines.
    Anonymous access should also be mostly unchanged except for AI scrapers.

    If you notice any adverse changes, please post a reply here.

    *Credit on our side goes to the irreplaceable Co-rion.

Perlmonks.com and Perlmonks.net to redirect to Perlmonks.org
5 direct replies — Read more / Contribute
by Co-Rion
on May 08, 2026 at 03:48

    As discussed in Moving the site behind a CDN, we will soonish move forward with moving the site behind Fastly. In conjunction, the domains perlmonks.com and perlmonks.net will also redirect to perlmonks.org, to improve cache hit rate.

    At least during the move the css.* domain will be unavailable, but as far as I understand the setup, we can later make css.perlmonks.org work again, especially for logged-in users.

    For the time being, you can update your bookmarks to perlmonks.org and save the login cookies for that domain.

    As for the timeline, the work is done by volunteers. I expect the DNS update and HTTP redirects to happen sometime next week.