Beefy Boxes and Bandwidth Generously Provided by pair Networks
P is for Practical

Comment on

( #3333=superdoc: print w/replies, xml ) Need Help??

You could combine the steps in your get_links() and sort_and_store() subroutines into one process.

knoppix@Microknoppix:~$ cat abc peter def jack ghi zak jkl ben mno mick pqr alan knoppix@Microknoppix:~$ perl -Mstrict -wE ' > open my $inFH, q{<}, q{} > or die qq{open: < $!\n}; > open my $outFH, q{>}, q{spw964070.out} > or die qq{open: > spw964070.out: $!\n}; > > print $outFH > map { $_->[ 0 ] } > sort { $a->[ 2 ] cmp $b->[ 2 ] } > map { [ $_, split ] } > <$inFH>; > > close $inFH > or die qq{close: < $!\n}; > close $outFH > or die qq{close: > spw964070.out: $!\n};' knoppix@Microknoppix:~$ cat spw964070.out pqr alan jkl ben def jack mno mick abc peter ghi zak knoppix@Microknoppix:~$

Sticking to your subroutines, it would be more efficient for get_links() to return a reference to @info than the huge array itself, like so:-

... return \ @links; } sub sort_and_store { my $refToLinks = get_links(); my @sorted_links = sort { $a->[1] cmp $b->[1] } @$refToLinks; ...

I hope these points are helpful.



In reply to Re^3: Sorting a "tuple" by the second value by johngg
in thread Sorting a "tuple" by the second value by thmsdrew

Use:  <p> text here (a paragraph) </p>
and:  <code> code here </code>
to format your post; it's "PerlMonks-approved HTML":

  • Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
  • Titles consisting of a single word are discouraged, and in most cases are disallowed outright.
  • Read Where should I post X? if you're not absolutely sure you're posting in the right place.
  • Please read these before you post! —
  • Posts may use any of the Perl Monks Approved HTML tags:
    a, abbr, b, big, blockquote, br, caption, center, col, colgroup, dd, del, div, dl, dt, em, font, h1, h2, h3, h4, h5, h6, hr, i, ins, li, ol, p, pre, readmore, small, span, spoiler, strike, strong, sub, sup, table, tbody, td, tfoot, th, thead, tr, tt, u, ul, wbr
  • You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
            For:     Use:
    & &amp;
    < &lt;
    > &gt;
    [ &#91;
    ] &#93;
  • Link using PerlMonks shortcuts! What shortcuts can I use for linking?
  • See Writeup Formatting Tips and other pages linked from there for more info.
  • Log In?

    What's my password?
    Create A New User
    and the web crawler heard nothing...

    How do I use this? | Other CB clients
    Other Users?
    Others studying the Monastery: (3)
    As of 2016-10-23 20:55 GMT
    Find Nodes?
      Voting Booth?
      How many different varieties (color, size, etc) of socks do you have in your sock drawer?

      Results (302 votes). Check out past polls.