in reply to Re^11: Why Perl 6 is taking so !@#$ long
in thread Why Perl 6 is taking so !@#$ long

Many routines in the perl world return undef to designate a failure of some sort. This usage is not false in the sense of "opposite of true", but it is exceptional.

The fact that 69 distributions on CPAN currently define a sub named err should say something.
Yeah! That there's need of some standardization. Perl6ism to the rescue! ;-)

update: BTW, read the Read or Die section of Exegesis4.

Replies are listed 'Best First'.
Re^13: Why Perl 6 is taking so !@#$ long
by shotgunefx (Parson) on Feb 28, 2006 at 15:59 UTC
    I've been on perlmonks for just about five years now and this is probably my most uncouth post.

    My opinion is that "err" is a plain stupid and counterintuitive name for what it does. It doesn't make any sense.

    -Lee
    "To be civilized is to deny one's nature."
Re^13: Why Perl 6 is taking so !@#$ long
by demerphq (Chancellor) on Feb 28, 2006 at 23:48 UTC

    Sigh. Yeah. Too bad. Its still a crappy name, even if it does look cute in a couple of contexts.

    I had a quick look through my code for defined, and very few of the uses were from function returns (or is almost always satisfactory for that case). Instead the majority were stuff like this:

    $x = $default unless defined $x;

    Since i doubt im unusual in this respect quite frankly I think Larry made the wrong call on this. And given that 69 distributions (including iirc DBI) use 'err' I think this is just bad plan. Why should Perl6's poor choice of a name have to negatively impact 69 CPAN distributions distributions of Perl5 code? IMO for no reason other than whimsy.

    And if I understand this correctly (its quite possible I dont), the only reason 5.8 hasn't had the 'dor' patch (funny how its called that) is because of this potential breakage. So thousands of programmers have been unable to use something that would go a long way to making things easier because Larry decided one day that 'err' sounded like a slurred 'or' and decided that in Perl6 this is what it would be called. And of course Perl5 can't name it 'dor' because that would contradict Perl6.

    Which just leaves me going 'ARGHHHHH!'

    ---
    $world=~s/war/peace/g

      It still doesn't negatively impact those 69 distributions. Perl's new err keyword is only active if you've enabled it with the feature pragma. It's still a dumb name. It just doesn't break stuff unless you ask it to.

      ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

        The feature pragma was a workaround to enable err to be added to perl. I don't think its right to use the workaround that robin came up with to bypass the problems of Larry's name choice as a basis to say that that choice was a good one. The fact that such a workaround was required (and a programmer of robin's skills was needed to do it) to me is just further proof of how bad a decision it was.

        ---
        $world=~s/war/peace/g