Sick, Perl 4 and Shelves

Matts on 2002-02-26T16:51:48

I'm sick. I hate being sick. There's simply nothing worse IMHO. Just a cold, but there's probably not much worse than a cold - you're not sick enough to be bed-ridden, yet you feel crappy, achy, and your nose produces more fluids than you can consume. Yuck. OK, I'm whining. My mother has breast cancer fer chrisake - that's definitely worse. Shutup, Matt.

To top that off this week's task at work (well, at home today feeling sorry for myself) is to re-architect our Skeptic anti-virus code. It's 16,000 lines of Perl 4. Luckily it uses strict, otherwise I think I would have quit already. It didn't however compile cleanly under -w, so first I went through and fixed all those issues. Now I have to pull the code apart into modules.

The painful thing is I've done this once already. But it failed when it went live, because the original author decided he didn't like my for (@ARGV) and changed it to while (shift @ARGV), thus terminating the loop when it saw a zero on the command line. Of course one of the parameters in "live" is almost always zero, causing a barforama. ARGH! Why do people have to touch my code!... This time I'm going to use GetOpt::Std, and he can shove his custom param parsing code :-) So after pulling the release, Alex (the Perl 4 coder) decided to continue coding his old code, instead of the re-architected code. So he sent me a copy last week, so I could merge in the changes again after about 2 months of me working on different things. I got a 20,000 line diff. Nightmare. So I decided rather than try and merge that amount of code, I'd be better off starting again from scratch. Oh what I wouldn't do for a refactoring editor for Perl ;-)

The good news is my shelves are back up. I used 4 inch frame fixings this time, instead of the widdly little 1 inch wallplugs I used last time. Should hold the thing up methinks, even against the mighty weight of Tipler's "Physics". Sadly my desk is still a disaster area. I need to get some tuits together to tidy it.


Kill him.

pdcawley on 2002-02-27T08:43:31

Kill him now. Quickly, before he breeds.

Well, I'm sort of working on (and mostly off) a perl refactoring engine, but I doubt very much that anything I come up with is going to work well with perl 4 type code.

Re:Kill him.

Matts on 2002-02-27T09:43:59

Well I've got it working under -w now. So the refactoring begins. I was kinda hoping you'd say "The refactoring browser is now working!", but then I'd be way too lucky, and that shit never happens to me ;-)

As for killing him, I would but anti-virus experts are impossible to find, let alone hire... I'll have to train him in the art instead :-)

Re:Kill him.

pdcawley on 2002-02-27T13:44:45

Hmm... Kill him. Kill him now. But if you can't manage that, teach him.

I think I like the sound of that.

...is now working...

chromatic on 2002-03-01T18:05:33

<optimism type="unbridled">

If someone could get myself, Piers, you, Rafael, Simon, and Ziggy in one room to concentrate on it for a week, we could cross several Rubicons. Schwern could get us sandwiches.

</optimism>

Re:...is now working...

ziggy on 2002-03-01T18:59:03

You mean like a hackathon? I wonder where we could get together for one whole week? :-)