Skip to main content



I would be interested to know why you chose Perl and how long you have been using it and what for.

I have just returned to Perl after many years away, think decades rather than a couple of years. Consider me a noob as I've long forgotten anything I knew about the language.

I run a small home webserver, Apache on Windows 10 with Strawberry Perl, and recently started some projects starting with moving away with things like Google Analytics and going back to some old log analyzers such as AWStats, which is still being maintained, and W3Perl, which is not. Even more recently I have started using Ringlink.

Perl is still being developed, Strawberry, Active State, CPAN etc. but lost out to PHP and Python. Just like COBOL, I can easily imagine thousands of systems depend on Perl.

submitted by /u/brisray
[link] [comments]




Have been using the official MongoDB driver to date (https://metacpan.org/dist/MongoDB) but its obviously EOL and now I can't get it to work with perl v.540 on OSX.

For those interested it fails on BSON::XS and I cannot force install either.

cp XS/XS.xs blib/lib/BSON/XS/XS.xs Running Mkbootstrap for XS () chmod 644 "XS.bs" "/usr/local/bin/perl" -MExtUtils::Command::MM -e 'cp_nonempty' -- XS.bs blib/arch/auto/BSON/XS/XS.bs 644 "/usr/local/bin/perl" "/usr/local/lib/perl5/5.40.0/ExtUtils/xsubpp" -typemap '/usr/local/lib/perl5/5.40.0/ExtUtils/typemap' xs/XS.xs > xs/XS.xsc mv xs/XS.xsc xs/XS.c cc -c -I. -Ibson -fno-common -DPERL_DARWIN -mmacosx-version-min=14.5 -DNO_THREAD_SAFE_QUERYLOCALE -DNO_POSIX_2008_LOCALE -fno-strict-aliasing -pipe -fstack-protector-strong -I/usr/local/include -D_GNU_SOURCE -DMONGO_USE_64_BIT_INT -DBSON_COMPILATION -Wno-error=implicit-function-declaration -O3 -DVERSION=\"v0.8.4\" -DXS_VERSION=\"v0.8.4\" -o xs/XS.o "-I/usr/local/lib/perl5/5.40.0/darwin-2level/CORE" xs/XS.c xs/XS.xs:216:3: warning: '(' and '{' tokens introducing statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro] PUSHMARK (SP); ^~~~~~~~~~~~~ /usr/local/lib/perl5/5.40.0/darwin-2level/CORE/pp.h:120:5: note: expanded from macro 'PUSHMARK' STMT_START { \ ^~~~~~~~~~ ./ppport.h:4305:31: note: expanded from macro 'STMT_START' # define STMT_START (void)( /* gcc supports ``({ STATEMENTS; })'' */ ^ xs/XS.xs:216:3: note: '{' token is here PUSHMARK (SP); ^~~~~~~~~~~~~ /usr/local/lib/perl5/5.40.0/darwin-2level/CORE/pp.h:120:16: note: expanded from macro 'PUSHMARK' STMT_START { \ ^ xs/XS.xs:216:3: warning: '}' and ')' tokens terminating statement expression appear in different macro expansion contexts [-Wcompound-token-split-by-macro] PUSHMARK (SP); ^~~~~~~~~~~~~ /usr/local/lib/perl5/5.40.0/darwin-2level/CORE/pp.h:129:5: note: expanded from macro 'PUSHMARK' } STMT_END ^ 

With that said, whats the most appropriate alternative out there?

submitted by /u/kosaromepr
[link] [comments]



A couple of data/compute intensive examples using Perl Data Language (#PDL), #OpenMP, #Perl, Inline and #Python (base, #numpy, #numba). Kind of interesting to see Python eat Perl's dust and PDL being equal to numpy.

OpenMP and Perl's multithreaded #PDL array language were the clear winners here.


https://chrisarg.github.io/Killing-It-with-PERL/2024/07/06/The-Quest-For-Performance-Part-I-InlineC-OpenMP-PDL.html

https://chrisarg.github.io/Killing-It-with-PERL/2024/07/07/The-Quest-For-Performance-Part-II-PerlVsPython.md.html

submitted by /u/ReplacementSlight413
[link] [comments]



Hello all. I installed Perlbrew to try it out using Perl modules without admin rights. My machine is Linux EOS. When I run a simple perl script it gives error Cant locate Modern/Perl.pm in \@INC. How do I make Emacs know that I am using perlbrew and not system Perl? Or how do add the perlbrew PATH to global \@INC? I also have setup Devel::PerlySense inside Emacs following the module documentation. I installed some modules using cpanm client. I'm new to Perl and Emacs and sometimes I'm lost n doesnt know what I'm doing lol 😀 Appreciate your pointing me to the right direction. Below are some log details:


Can't locate Modern/Perl.pm in u/INC (you may need to install the Modern::Perl module) (@INC entries checked: /usr/lib/perl5/5.38/site_perl /usr/share/perl5/site_perl /usr/lib/perl5/5.38/vendor_perl /usr/share/perl5/vendor_perl /usr/lib/perl5/5.38/core_perl /usr/share/perl5/core_perl) at ./read_input_stdin line 4.

BEGIN failed--compilation aborted at ./read_input_stdin line 4.

❯ perlbrew info

Current perl:

Name: perl-blead

Path: /home/user/perl5/perlbrew/perls/perl-blead/bin/perl

Config: -de -Dprefix=/home/user/perl5/perlbrew/perls/perl-blead -Dusedevel -Aeval:scriptdir=/home/user/perl5/perlbrew/perls/perl-blead/bin

Compiled at: Jul 6 2024 10:50:31

perlbrew:

version: 0.98

ENV:

PERLBREW_ROOT: /home/user/perl5/perlbrew

PERLBREW_HOME: /home/user/.perlbrew

PERLBREW_PATH: /home/user/perl5/perlbrew/bin:/home/user/perl5/perlbrew/perls/perl-blead/bin

PERLBREW_MANPATH: /home/user/perl5/perlbrew/perls/perl-blead/man

❯ perl --version

This is perl 5, version 41, subversion 2 (v5.41.2 (c5df4fd1012cc64d1b3e19c87bf8c51d4f3f90d6)) built for x86_64-linux

❯ perlbrew list-modules | grep modern

Modern::Perl

submitted by /u/Ill-Dependent2628
[link] [comments]