Beefy Boxes and Bandwidth Generously Provided by pair Networks
Clear questions and runnable code
get the best and fastest answer

Comment on

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

The code uses system to sleep 2 or 5 seconds. Is it waiting for something to happen? Giving some code a chance to complete?

It uses a shell method to copy files and perform other system commands. Are these complicated? on a remote platform? Or simply not built-ins in the original language?

I had a similar problem last winter, miles and miles of bad linear code, though in my case the problem was the original codeers, rather than the original language. I keep thinking about writing an article like the ones MJD has, how 3000 lines of bad code can collapse into 137 lines of good code.

Begin by reading a few files, getting the feel for what they do. Take one file, edit to reduce repetition, using conditions, loops, etc. Rename poorly named variables, to increase clarity. Refactor code into routines: Top level code shoudl consist of built-in commands, object constrruction, and subroutine calls. Subroutines that actually do the work should be short, a dozen lines, two dozen at the most, and should do one thing. Those routines are used in more complicated routines. This way, it will be easier to share subroutines between files. Don't worry about making one file perfect. Just simplify it and go on to the next; you'll be back to share code, anyway.


In reply to Re: Finding duplicated code in Perl by TomDLux
in thread Finding duplicated code in Perl by shushu

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 all is quiet...

    How do I use this? | Other CB clients
    Other Users?
    Others wandering the Monastery: (8)
    As of 2018-06-19 15:07 GMT
    Find Nodes?
      Voting Booth?
      Should cpanminus be part of the standard Perl release?

      Results (114 votes). Check out past polls.