Various praise/comments/rants about Troy, RPI, PhDs, Macs, and life in general.

Wednesday, July 16, 2008

Apple Garbage Collection Bugs

OK. Quick rant time.

I've been working on my RPE (it's like a candidacy) for a while now and it's really crunch time. So I'm trying to get this discrete event simulator completed in time to collect some results for my presentation on the 25th of July. This really needs to get done quick, what should I use? C++? C? Those are very fussy about types and what you can pass where. Maybe this would be a good time to put my Objective-C knowledge to use?

So, I go down that road and it's going great! I turn on garbage collection and things are going extremely smooth. Today my advisor has me expand my model a little bit. Hmm. Suddenly things that were working quite happily are now crashing to bejesus and back. I try everything. I make everything copyable and then make copies of arguments at the beginning of methods, before I modify them inside methods, you couldn't throw a stick and not hit a place where I copied that data. I found some slightly devious bugs along the way but just could not solve this problem!

Finally, I open up AIM and start chatting with my buddy. I ask him if GC can cause problems. He says he doesn't think so, but what the hell, it was 3:30am and I was friggin' tired. So I turn it off and, wouldn't you know it, everything starts working right. God damnit. I hate it when the stuff I was doing the whole time was right and it's someone else's fault. I hate it even more when it's Apple because I enjoy their platform so much. But after the Time Capsule ordeal (don't get one if you don't have one - my advice as of 7/16/08) and the garbage collection hooplah, I don't know anymore. Oh well. At least they still have the unix goodness going for them!

No comments: