Beefy Boxes and Bandwidth Generously Provided by pair Networks
Think about Loose Coupling
 
PerlMonks  

Re^2: Make $^V and "my" implicit

by chromatic (Archbishop)
on Feb 04, 2014 at 04:13 UTC ( [id://1073297]=note: print w/replies, xml ) Need Help??


in reply to Re: Make $^V and "my" implicit
in thread Make $^V and "my" implicit

why do people put use 5.010 (or higher) in code that is destined for CPAN

You're getting everything on the CPAN for free. Why do you expect volunteers to support code that's 18 versions obsolete?

Please don't assume that others who want to use an otherwise great CPAN module have the environment that will allow them to use anything higher than 5.8 unless there are compelling reasons to disregard those users.

If they haven't upgraded Perl in the past six years, I have trouble believing they're on the edge of their seats waiting to install the latest version of a module from the CPAN.

Replies are listed 'Best First'.
Re^3: Make $^V and "my" implicit
by boftx (Deacon) on Feb 04, 2014 at 05:44 UTC

    You are right. I, along with many others, get stuff from CPAN for free. That said, some of us do try to return the favor by either contributing back or sharing what knowledge we can. I don't think that invalidates my request that more thought goes into a CPAN module than how many cool, new features can be incorporated that many folks can not use for one reason or another.

    I ask that you bear in mind that there can be outside factors that prevent one from running the latest and greatest at every chance. There are shops out there that still use 5.6 for valid technical reasons, and they are chomping at the bit for those reasons to be removed. Others are on 5.8 for outside reasons, and will change as soon as a 3rd-party vendor makes changes.

    In the meantime, the shops I have direct knowledge of contribute back to CPAN as an acknowledgement of their debt to others as well as take an active part in the Perl community.

    I understand and appreciate the position you stated, and will even grant that there are more than a few who are fully covered by it, but I think you paint with too broad a brush.

    It helps to remember that the primary goal is to drain the swamp even when you are hip-deep in alligators.
      I don't think that invalidates my request that more thought goes into a CPAN module than how many cool, new features can be incorporated that many folks can not use for one reason or another.

      My code needs working Unicode because I have users who rely on working Unicode. That means at least Perl 5.14—which isn't even supported by p5p anymore.

      There are shops out there that still use 5.6 for valid technical reasons....

      That's fine, but those aren't my reasons and they don't affect me.

      Others are on 5.8 for outside reasons, and will change as soon as a 3rd-party vendor makes changes.

      That's fine, but that vendor's valid technical reasons are even further removed from my concerns. Also the word "vendor" makes me think that someone's getting paid. (I'm not; I'm giving away my code for you to use, modify, distribute, or ignore as you see fit.)

      I've written, tested, documented, and debugged my code. I let you use it for free. I let you redistribute it freely. I let you modify it and redistribute modified versions. In return, all I ask is that do not remove my attribution from it. Is that so much to ask?

      I can't use improvements I've made to Perl itself in the past several years because you have technical concerns that you assure me are valid? Even though they don't apply to me—even though I've given away everything but the credit for writing, testing, documenting, and debugging this code—that's not enough for you?

      What next? If English isn't your first language, is it also my responsibility as a volunteer to translate all of the documentation, comments, and identifiers into everyone's preferred spoken language, because there are valid technical reasons why someone who isn't me (someone who's getting paid to work on this code) uses the local preferred tongue?

      You don't have to be grateful. You don't have to use code I've written. You don't have to care. Even so, I think that telling a volunteer "Sorry, it isn't enough!" is a bit rude.

        You don't have to be grateful. You don't have to use code I've written. You don't have to care. Even so, I think that telling a volunteer "Sorry, it isn't enough!" is a bit rude. - chromatic

        I am sorry if that was the tone you received from my post and I apologize. That was not my intention. I have deep respect for all you have done.

        When I said "vendors" I was thinking specifically of CentOS 5, which continues to ship with 5.8 (to the best of my knowledge.) I understand that the situation will be changing in the near future. Yes, I know that there are ways around that limitation, but they are not an option for everyone who might be stuck with that OS.

        In any event, it seems that you and I are arguing at cross purposes when we both have strong feelings for Perl and wish to see it move forward in a way that not only advances the language and recruits new converts, but gives existing proponents the tools they need to eventually "catch up" as their situation permits.

        It helps to remember that the primary goal is to drain the swamp even when you are hip-deep in alligators.
Re^3: Make $^V and "my" implicit
by FloydATC (Deacon) on Feb 04, 2014 at 13:20 UTC
    If they haven't upgraded Perl in the past six years, I have trouble believing they're on the edge of their seats waiting to install the latest version of a module from the CPAN.

    I may have old Perl versions on some of my servers, that doesn't mean I don't occasionally have to install another CPAN module.

    If that won't work because of some critical feature that simply doesn't exist in my version of Perl, then fine... maybe it's time to upgrade. If, on the other hand, it won't work simply because the author decided to require some fancy, superficial feature like say (because he couldn't be bothered to use print with a "\n"; tacked on), then I would advice that author to switch to Python where nobody seems to care about backwards compatibility.

    Which, btw, is the number reason I won't go near Python.

    -- FloydATC

    Time flies when you don't know what you're doing

      If, on the other hand, it won't work simply because the author decided to require some fancy, superficial feature like say....

      "What is the sound of Perl? Is it not the sound of a wall that people have stopped banging their heads against?" — Larry Wall

      One person's superficial triviality is a feature that's been in Perl for more than six years now. How long before it's acceptable for volunteers who give away their code freely to use those features? Ten years? Fifteen? If I fix a bug in Perl today and it gets released in 5.20, will I be able to rely on that bug being fixed by 2024? 2029?

      You don't have to upgrade Perl, but you don't have to use any modules I've written either. Even better—you don't have to use them as written. You are more than free to modify them to run on your preferred version. I'll even give you a comprehensive test suite so you can prove that they work to your satisfaction. You can even redistribute the modified version.

      Is that not enough?

        I have to admit I don't know exactly who wrote each and every module I use, and I'm very happy that this isn't (yet) a big enough problem to cause great concern and personal discomfort.

        I'm just saying that if a critical component like DBI or LWP broke on RHEL/CentOS 5 tomorrow because someone wanted to use new and shiny features to golf the code down a bit, I think you'd see a sharp decline in the popularity of Perl.

        Bug fixes are ofcourse a completely different subject. Anyone who writes production code that relies on a bug to function properly should have their keyboard privileges permanently revoked.

        -- FloydATC

        Time flies when you don't know what you're doing

Log In?
Username:
Password:

What's my password?
Create A New User
Domain Nodelet?
Node Status?
node history
Node Type: note [id://1073297]
help
Chatterbox?
and the web crawler heard nothing...

How do I use this?Last hourOther CB clients
Other Users?
Others musing on the Monastery: (6)
As of 2024-03-29 01:07 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    No recent polls found