Skip to main content



I stumbled upon this really nice page from Ruby, describing the language from the perspective of other common programming languages:

https://www.ruby-lang.org/en/documentation/ruby-from-other-languages/

The page is written in a friendly tone, inviting programmers familiar with other programming languages to Ruby. No programming language is being viewed as inferior, quite the contrary: all mentioned languages are praised and even defended from haters, for example:

  • "Perl is awesome. Perl’s docs are awesome. The Perl community is … awesome. For those Perlers who long for elegant OO features built-in from the beginning, Ruby may be for you."
  • "Happily, it turns out that Ruby and C have a healthy symbiotic relationship. And, of course, Ruby itself is written in C."
  • "Java is mature. It’s tested. And it’s fast (contrary to what the anti-Java crowd may still claim)."
  • "Python is another very nice general purpose programming language."

I believe Perl could greatly benefit from having a similar page. With its friendly philosophy and TMTOWTDI, it seems natural to invite programmers from other languages, with an approach of "Don't be afraid to keep programming the way you are used to, if it works in Perl, there are no limits enforced".

Since Perl is now not a common choice for new code or for learning, it makes a lot of sense to bring over people from other languages. Especially in an age where strict conventions seem to be praised, I can see Perl becoming a source of some fresh air.

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



networking constants and support functions

Changes for 2.038 - 2024-04-15

  • CHANGES
  • BUGFIXES



Dist::Zilla configuration the way AJNN does it

Changes for 0.07 - 2024-04-15

  • Add git contributors to meta and pod
  • Use an HTTP link instead of an SMTP address in the pod author section
  • Add readme support for main modules with separate .pod files
  • Use Leftovers instead of Generic in PodWeaver



my $MAX_PROCESSES=10; my $pm = Parallel::ForkManager->new($MAX_PROCESSES); while (1) { my $pid=$pm->start and next; print "$$ LOCK \n"; $pm->finish; } $pm->wait_all_children; 

I made this sample piece of code which I basically took from the docs, I only changed to infinite loop but I cannot understand why this would make any different between an infinite loop and iterating through an array for example? Anyway I am fighting this for several hours now trying different versions of my code and cannot find why am I getting "Cannot start another process while you are in the child process" all the time, any hints appreciated

output looks basically like this

Cannot start another process while you are in the child process at .... 16366 LOCK 16367 LOCK 16368 LOCK 16369 LOCK 16370 LOCK 16371 LOCK 16372 LOCK 16373 LOCK 16374 LOCK 16375 LOCK Cannot start another process while you are in the child process at .... 

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



Find or build xz

Changes for 0.09 - 2024-04-15T11:21:20Z

  • use GitHub plugin to fetch tarball (gh#8, gh#10)


Build or find autoconf

Changes for 0.20 - 2024-04-15T08:16:02Z

  • Fixes for 2.72 (gh#17, gh#18)


113-bit integer arithmetic

Changes for 0.05

  • Add README file.
  • Fix bug in t/bitwise_gmp_cross_checks.t


Simple opinionated tool to set up a Perl distribution directory.

Changes for 0.14 - 2024-04-15

  • Allow to specify the type of runners to use for the GitHub CI actions.
  • Make the dependency on CPAN::Common::Index::Mux::Ordered be optional.


parses .pm file as PAUSE does

Changes for 0.46 - 2024-04-15

  • Strip BOM before finding a package



A base for sort-like CLI utilities

Changes for 0.003 - 2024-03-06

  • [incompatible change] Replace _sortgen with _gen_sorter + _gen_comparer + _gen_sortkey.


Sort lines of text by spec

Changes for 0.004 - 2024-03-06

  • Update to AppBase::Sort 0.003.
  • [doc] Fix example.


Collection of CLI utilities for Sah and Data::Sah

Changes for 0.484 - 2024-03-06

  • Rename scripts: list-sah-schemas-modules -> list-sah-schemabundle-modules, list-sah-pschemas-modules -> list-sah-pschemabundle-modules.
  • Tweak examaple summary.


List of new CPAN distributions – Mar 2024 submitted by /u/perlancar
[link] [comments]



SPVM Language

Changes for 0.989101 - 2023-04-14

  • Imcompatible Changes
  • Internal Changes
  • Compilation Error Message Improvement


HTTP/2 Dynamic Benchmarks (PHP vs. ModPerl2), 2024 edition.

I ram these about four years ago, and the time differentials were about the same then as now. Monolithic POSIX-threaded server architectures like mp2 + mpm_event will always dominate in low-latency/scalability HTTP/2 benchmarks because they leverage zero-copy in the runtime.

Anyways, sexy terminal graphs with smag to enjoy!

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



Some basic stat computations with Perl , Python and RLessons learned:
A) Performance freaks to stop using #rstat 's runif for random generation. The Hoshiro random number generator https://arxiv.org/abs/1805.01407 is 10x faster.
Implementations in #perl 's #PDL, #rstats (dqrng) and #python #numpy are within 20% of each other

B) But does it make a difference in applications? To get to the bottom of this, I coded a truncated random variate generator in #rstats and #perl using #pdl (as well as standard u/perl) using the #GSL packages https://metacpan.org/pod/PDL::GSL::CDF & https://metacpan.org/pod/Math::GSL for accessing the CDF & quantile functions. In this context, it's the calculation of the #CDF that is the computationally intensive part, not the drawing of the random number itself.
Well even in these case, the choice of the generator did matter. Note that the fully vectorized #PDL #perl versions were faster than #rstats

C) I should probably blog about these experiments at some point. Note that #pdl (but not base #perl) are rather competitive choices for large array processing with numerical operations. I mostly stay away of #python , but would not surprise me that for compute intensive stuff (where the heavy duty work is done in C/C++), it does not matter (much) which high level language one uses to build data applications

https://preview.redd.it/qn00sx78gbuc1.png?width=1538&format=png&auto=webp&s=1874b9e710c239e9acea36fb54d957167a69b270

https://preview.redd.it/4by4jbh9gbuc1.png?width=1538&format=png&auto=webp&s=dc9944347983445126e4ab57b43c76202ca719d6

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

Programming Feed reshared this.





Cross-platform executor for parallel tasks executed in forked processes

Changes for 0.01 - 2024-04-13

  • Initial release


data pack for Business::ISBN

Changes for 20240413.001 - 2024-04-13T19:53:52Z

  • data update for 2024-04-13


Acceptance testing for JSON-Schema based validators

Changes for 1.023 - 2024-04-13T19:25:31Z



Hi, im working on this perl script wherein i should get all files with filename < 900000

Ex. sample_file_802856.txt sample_file_27364692.txt sample_file_385620.txt

the script should get:

sample_file_802856.txt sample_file_385620.txt

I already have the code but it’s failing on this part coz im having a hard time getting the regex for < 900000 😆

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



The great new Seven!

Changes for 0.01

  • First version, released on an unsuspecting world.


A SQL Database object abstraction class

Changes for v1.3.1 - 2024-04-11T22:27:49Z

  • Modified method 'structure' in DB::Object::Mysql::Table to ensure all fields returned are in lowercase.


Libraries and Utilities to work with Dogecoin

Changes for 1.20240413.0031 - 2024-04-12T17:31:00-07:00

  • removed unnecessary warning


Subroutine attribute for compile-time method lookups on its typed lexicals.


test MIDI file contents

Changes for 0.02 - 2024-04-13

  • Add more MIDI event test functions. Break the midi_track interface a bit. Improve the documentation.


A collection of Acme::CPANAuthors::CPAN::Streaks::* modules

Changes for 20240412.0 - 2024-04-12

  • Update.




Sort by keys generated by a SortKey:: module

Changes for 0.001 - 2024-01-24

  • First release.


Apache SpamAssassin is an extensible email filter which is used to identify spam



Simple opinionated tool to set up a Perl distribution directory.

Changes for 0.13 - 2024-04-11

  • Fix a typo in the MANIFEST.SKIP file.
  • Add support to specify the keywords and no_index META directive.







Check for the presence of a compiler

Changes for 0.024 - 2024-04-11T14:43:48+02:00

  • Make temporary dir absolute


Hi,

I am moving to RedHat 9 from RedHat 7. I am running Apache with mod_perl.

I have installed the mod_perl package on the RedHat 9 box. I am getting this error on bit of code that I wrote:

Can't locate XSLoader.pm: /usr/local/lib64/perl5/5.32/XSLoader.pm: Permission denied at /usr/lib64/perl5/vendor_perl/Apache2/XSLoader.pm line 22.\nBEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/Apache2/XSLoader.pm line 22.\nCompilation failed in require at /usr/lib64/perl5/vendor_perl/Apache2/Access.pm line 24.\nBEGIN failed--compilation aborted at /usr/lib64/perl5/vendor_perl/Apache2/Access.pm line 24. 

When I do a search for XSLoader.pm, I find:
/usr/lib64/perl5/vendor_perl/APR/XSLoader.pm /usr/lib64/perl5/vendor_perl/Apache2/XSLoader.pm /usr/share/perl5/XSLoader.pm 

I am guessing I have some path issue. Any ideas what I may need to do?

thank you

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



iterators for objects that know the next element

Changes for 1.148 - 2024-04-10T18:05:54Z

  • need a user release for indexing?


Audit CPAN distributions for known vulnerabilities

Changes for 20240410.001 - 2024-04-10T17:51:12Z

  • data update for 2024-04-10


iterators for objects that know the next element

Changes for 1.147_01 - 2024-04-10T17:42:51Z

  • Try not indexing preprocess/


iterators for objects that know the next element

Changes for 1.147 - 2024-04-10T16:55:14Z

  • Release again to investigate PAUSE indexing issue (#16)
#16


Neo4j community graph database driver for Bolt and HTTP

Changes for 0.48 - 2024-04-10

  • The cypher_params config option now allows 'v2' as a synonym for v2.
  • Minor documentation updates.