List shortage of Perl

I list shortage of Perl.

  • Object-Oriented feature in core

    For a long time, Perl don't support clean Object-Oriented feature in core. Ruby and Python can write OO programing clean, but Perl can't. This will be resolved by adding mop to core in the five years.
  • Web application

    Perl don't have famouse Web application. For example, PHP have Word Press, phpMyAdmin, Python have trac, Ruby have redmine, GitLab, but Perl don't have. I think we need to see web world.
  • Web service startup

    People think Perl is old language. If people contine to think this, People tend not to use Perl in web service startup. Now Perl have Mojolicious, Web startup is easy and clean. Perl disadvantage is none compare with Ruby on Rails. We can recommend Web service startup with Perl.
  • Statistics

    age is attending to big data and staticstics. In this area, most people maybe select R language and Python numpy and scipy. Perl have PDL, but I think most people maybe select R langauge and Python numpy and scipy. These are more clean and simple than PDL and Perl. People tend to select clean and simple interface. I want clean staticstics library.

Perl comunity tend to attend to CPAN and Perl language itself,
but I think we need to see the outer world of Perl itself and CPAN.


Yuki -

I cannot speak directly to your first three concerns, but I can speak to the last one. I have worked extremely hard over the last five years to make PDL better. When I started using PDL, I felt like it was a bit underdocumted in places, so I wrote documentation. I even wrote a chapter of the PDL::Book to get people started on using PDL::PP, the workhorse of the distribution. For years folks griped on the mailing list that we didn't have a suitable plotting library that would install everywhere, so I WROTE ONE. I have done nearly everything in my power to make PDL a better tool. And in spite of my efforts, folks turn to numpy and R.

I know that you have the best of intentions with this blog post, but speaking only for myself, it just makes me sad and angry. The Perl community has not responded when I have written new code, designed to make the lives of Perl number crunchers easier. How much do you expect from them when you have nothing to offer besides your written disappointment?

I will continue to hope that some day I'll write or revise some numerical module that reaches beyond the PDL community and into the wider Perl community, a module like Moose that breaks down barriers between the Perl sub-disciplines, a module that a physicist, web programmer, sysadmin, and biologist will all want to use. When that happens, when we can get a significant group of people from different backgrounds working together on a major module, you can expect great things. Obviously I've not written that module yet, but I maintain hope.

If you are serious about doing more to address these problems (I see you've already worked on Mojolicious, hence addressing at least one of them), here are some actionable steps: If you think Perl needs stronger statistics modules, help Maggie with PDL::Stats ( If you think it needs object-oriented features in the core, work on p5-mop-redux ( No matter what you do, go to a large non-Perl conference in Japan and present on your work. If you think the wider world needs to know, then present your work to the wider world.

We can sit around and complain all day, or we can work hard now and give awesome presentations at OSCON about our amazing work. I prefer to aim for the latter.

my list is different.

1. Current OO is ok for me.

2. Web applications, probably yes, but why only Web? What about GUI/system applications/command-line?

3. Status of support of some modules/technologies is questionable: Qt, HTTP Library (yes, LWP has lot's of open issues), cryptography.
there are modules. but some of them too new, some too old and not supported.

Thank you so much for your contribution for PDL. I use PDL at times and am amazed by this power considering the limited resources PDL team have. The REPL of PDL is a great tool.

> Web applications

> But, people tend to seek clean OO system. Ruby and Python have clean OO syntax, but Perl don't have yet

I am Ruby on Rails and Perl programmer, and I don't see problems in perl OO

I wonder, what is the bigger problem you see with avoiding use of accessors? i.e. what if one just use $self->{somefield} ?

@Code Monkey, thanks for the kind words.

@Yuki, thanks for the apology. You are expressing a wish that Perl was used more for numerical work and I share that wish. I think the issue was that I misread your wish as a demand of the Perl community that it step up.

@vsespb, direct hash access is fine, unless you (the author of the underlying class) need to start doing validation transparently. Then you have to perform a whole bunch of search-and-replace stuff. I think Yuki was complaining about all the boiler plate needed for basic accessors.

FWIW, it's "encapsulation," not "capsulation", because en- is a prefix:

a prefix occurring originally in loanwords from French and productive in English on this model, forming verbs with the general sense “to cause (a person or thing) to be in” the place, condition, or state named by the stem

I think encapsulation is a useless turd, but I also like languages.

Leave a comment

About Yuki Kimoto

user-pic I'm Perl Programmer. I LOVE Perl. I want to contribute Perl community and Perl users.