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.
Posts are HTML formatted. Put <p> </p> tags around your paragraphs. Put <code> </code> tags around your code and data!
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:
You may need to use entities for some characters, as follows. (Exception: Within code tags, you can put the characters literally.)
- 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
Link using PerlMonks shortcuts! What shortcuts can I use for linking?
See Writeup Formatting Tips and other pages linked from there for more info.
| & || & |
| < || < |
| > || > |
| [ || [ |
| ] || ] ||