Beefy Boxes and Bandwidth Generously Provided by pair Networks
There's more than one way to do things

Re^3: Modify values of tied, split lines in a file

by Anonymous Monk
on Oct 22, 2012 at 22:42 UTC ( #1000423=note: print w/replies, xml ) Need Help??

in reply to Re^2: Modify values of tied, split lines in a file
in thread Modify values of tied, split lines in a file

And I will take those rebuttals at face value and now try to address them as best I can ... since now I see that you were not the source of your problem.   Your situation is a familiar one, and if you interpret what I have said (alas, reasonably so ...) as a personal affront, then I now personally and publicly apologize for it.

(Let me reiterate that:   my initial response, I now see, was strikerather/strike that of a horse’s asterisk.)   :*{   Okay, I said it first.   I am sorry.   May we please move on.

The use of Tie::File is basically an in-efficient way to handle the input file, but for the moment “it is one that works” and I am not personally familiar with whether or not it loads the entire file in memory.   If it does, then that part of the program must immediately be replaced at whatever the cos might be, because it just might be the camel’s straw.

In any case, the notion of modifying the file, if it remains a file in its present form, should be immediately and categorically excluded.   You need to consume a file as input, and to produce a file as output, without altering the input and with complete replacement of the output.   That is, if the output file in question must be of the same format and cannot possibly be, say, an SQLite database file instead.

I cordially suggest that your task is destined to be more than “streamline.”   The best strategy would be to work with a file format that is specifically designed to be a read/write file, such as SQLite.   You definitely do not want to be working in terms of explicit print statements, even if they work “at the moment,” because they are destined to be maintenance PITAs forevermore.  

The present modus operandi of this collection of legacy scripts is ... doomed, unsalvageable.   And so, not to be continued.   Deeper cuts, made carefully but made once, will lift this long-standing headache out of its present mire and could well dramatically transform it.   I suggest that you need to advocate for permission to make this deeper approach.

(Please re-read the next to last sentence of paragraph #2.)

  • Comment on Re^3: Modify values of tied, split lines in a file

Replies are listed 'Best First'.
Re^4: Modify values of tied, split lines in a file
by sundialsvc4 (Abbot) on Oct 22, 2012 at 22:43 UTC
    (Damn!)   Why did Perlmonks log me out?   Those words above were mine.   But I can’t edit them now unless The Gods give them to me.

Log In?

What's my password?
Create A New User
Node Status?
node history
Node Type: note [id://1000423]
and all is quiet...

How do I use this? | Other CB clients
Other Users?
Others imbibing at the Monastery: (2)
As of 2018-03-21 05:43 GMT
Find Nodes?
    Voting Booth?
    When I think of a mole I think of:

    Results (263 votes). Check out past polls.