in reply to Re^2: Installing Module::Info 0.35 for Strawberry Perl 5.22.0
in thread Installing Module::Info 0.35 for Strawberry Perl 5.22.0

It’s not only Module::* modules that suffer from *nix bias. I regularly come across interesting modules, only to find that they won’t install on Windows.

And there is the whole Win32::* namespace that doesn't install elsewhere.

I think it is inevitable that there will be platform dependencies.

I also can't blame *nix authors who never use and don't have access to Win32 for not wishing to get involved in porting stuff to that platform; I feel similarly going the other way.

What does bug me somewhat are infrastructural modules -- Module::Build et.al -- that break on Windows because of:


My sense is that this problem is slowly getting better (or is that just wishful thinking?)

Dunno. At times in the past it has seemed that things were improving in this regard; but then the prevailing wind changes and they swing again.

Unfortunately, I’ve become dependent on P5U,

Your choice of course; but (from personal experience) you may come to regret becoming dependent upon tools and utilities that do not directly contribute to your applications purpose.

That's not a criticism of p5u per se -- tobyink produces good code and maintains them well.

But generally, there is a fine line between using useful tools when they are effective; and becoming dependent upon those useful -- but not strictly required -- tools, to the point that if they fail, you do.

This is the same difference between a library and a framework.

With a library, if the library fails, or fails to be maintained, or becomes unavailable; you can mock up that library yourself, even if all it does is return hard-coded, known-to-work results in the interim; and your application can continue forward.

With a framework; if it ceases to be usable for any reason, because your application is structured to the requirements and architecture of that framework; it effectively needs to be re-written from scratch. You are locked in to the continued availability and efficacy of the framework; and worse, all of its dependencies.

Add to that the undeniable correlation between: the authors of frameworks; and the propensity to re-use 50% of CPAN in every module they write; and you knowingly sit yourself atop a time-bomb with 57 varieties of trigger all in the hands of a bunch of irreplaceable programmers you don't know and whom are scattered to the four winds, every time you choose to type use Framework::Du::Jour; at the top of your code.

When Moose was framework du jour for a while; I tried to caution its authors against the practices that would make it the ticking time bomb it became. To no avail.

Just beware of installing unnecessary dependencies into your applications and processes.


With the rise and rise of 'Social' network sites: 'Computers are making people easier to use everyday'
Examine what is said, not who speaks -- Silence betokens consent -- Love the truth but pardon error.
"Science is about questioning the status quo. Questioning authority".
In the absence of evidence, opinion is indistinguishable from prejudice.
I'm with torvalds on this Agile (and TDD) debunked I told'em LLVM was the way to go. But did they listen!