Beefy Boxes and Bandwidth Generously Provided by pair Networks
Perl Monk, Perl Meditation
 
PerlMonks  

Re^4: Miscellaneous.pm?

by polettix (Vicar)
on Mar 06, 2006 at 11:41 UTC ( #534667=note: print w/ replies, xml ) Need Help??


in reply to Re^3: Miscellaneous.pm?
in thread Miscellaneous.pm?

[List::MoreUtils]... is chock full of functions of dubious utility and quality.
Could you elaborate a bit about the quality? Just curious, could be an interesting source for guidelines and best practices (and probably a meditation by its own).

Flavio
perl -ple'$_=reverse' <<<ti.xittelop@oivalf

Don't fool yourself.


Comment on Re^4: Miscellaneous.pm?
Re^5: Miscellaneous.pm?
by diotalevi (Canon) on Mar 06, 2006 at 14:26 UTC

    I objected most to the use of prototypes everywhere. I might have found one thing I disliked but I was sure I'd get things wrong if I used it because it's a bag of functions and it'd force some particular syntax on me.

    I kind of sort of wish that if the author really believed in those functions that they'd be added to List::Utils directly.

    ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

      I don't think to understand thoroughly, but it probably stems from the fact that I'm English impaired.

      About the syntax, it seems to me that the whole point of both List::Util and List::MoreUtils is to try and mimic the celebrated built-ins for dealing with lists, namely sort, grep and map. This is probably why the two modules are "poisoned with prototypes". The net effect is that you don't have to learn a new, particular syntax, just reuse what you're already comfortable with.

      About the interaction between the two modules, AFAIK the author of List::Util was not willing to include other functions inside it, and this basically led to List::MoreUtils. I wouldn't prepare and maintain a module if I wouldn't believe in what I'm putting into it :)

      Flavio
      perl -ple'$_=reverse' <<<ti.xittelop@oivalf

      Don't fool yourself.

        It's blatantly wrong to try to mimic built-in syntax for non-builtins. That is, I already know it's not a builtin and everyone using it is expected to know that. Given that, it ought to act like a user function!


        BTW, I'm just being blatantly opinionated here.

        ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

Log In?
Username:
Password:

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

How do I use this? | Other CB clients
Other Users?
Others perusing the Monastery: (4)
As of 2014-07-24 23:53 GMT
Sections?
Information?
Find Nodes?
Leftovers?
    Voting Booth?

    My favorite superfluous repetitious redundant duplicative phrase is:









    Results (167 votes), past polls