http://www.perlmonks.org?node_id=534013


in reply to Miscellaneous.pm?

My source is full of little sub uniq { my %seen; grep !$seen{$_}, @_ } functions, all alike. Things this small are too small to remember to include specifically so they get retyped whenever needed.

⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

Replies are listed 'Best First'.
Re^2: Miscellaneous.pm?
by markjugg (Curate) on Mar 03, 2006 at 00:14 UTC
    Are you aware of List::MoreUtils? It contains a "uniq" function much like this.

    BTW, there seems to be bug in your routine. I think you meant something like !$seen{$_}++.

    That illustrates the value of having even a "simple" routine in a re-usable module!

      That module is on my to-avoid list. It's poisoned with prototypes and is chock full of functions of dubious utility and quality. Thanks for the note about the bug in my response. I don't make the same mistake when I'm typing at source code.

      In general, I'd prefer to inline these sorts of tasks anyway. It's only while experimenting that I use these as broken out functions.

      ⠤⠤ ⠙⠊⠕⠞⠁⠇⠑⠧⠊

        Thanks for the note about the bug in my response. I don't make the same mistake when I'm typing at source code.
        LOL! Yeah, right. You've shown a perfect example why people ought to put such often used code in a module, instead of typing it in, again and again.
        [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.
        A reply falls below the community's threshold of quality. You may see it by logging in.