Re: Performance problem with GC enabled
Re: Performance problem with GC enabled
- Subject: Re: Performance problem with GC enabled
- From: Wade Tregaskis <email@hidden>
- Date: Sat, 14 Mar 2009 13:30:25 -0700
Ah, right, sorry. I'm not saying the existing API would permit such a
change, more's the pity. All I'm saying (and I doubt that saying
this has
any value) is that it could, and in my opinion should, have been
done that
way in the first place.
It's very tempting to try to enforce this in a CF-based API. It also
turns out to be really annoying to use the subsequent API. If you
look at CoreFoundation itself, you'll find a lot of void returns
(what, errors? impossible!) and non-retaining getters... these make
it really simple to use and impossible to use safely, and impossible
to improve the implementation there-of. You really appreciate this
the first time you re-implement a function conscious of the fact that
it now deliberately leaks every time it's called (don't ask, the
memory still makes me cry).
Having written libraries/frameworks at both the C, CF and Cocoa
levels, if you told me you were writing one in anything less than
Objective-C, I would slap you in the face, shake you by the shoulders
and scream "Why? Oh god why?". And you'd better have a damn good
reason (there are some, but they're thankfully rarely applied), else
I'll revoke your programming privileges for eighteen months. :P
And though personally I dislike GC, if you said you weren't supporting
it, I'd be upset much the same. It should be pretty obvious to
everyone that GC is ultimately the way forward, and that it's only
going to get better as time goes on. Reference-counting is virtually
static. It will not magically improve in any significant way. If you
think GC can never outperform it, even in theory, I'd politely suggest
you haven't considered the matter very well.
So while it's not a panacea today, complaining about it on lists is
not productive (as opposed to seeking workarounds in a constructive
manner, which is entirely appropriate). Please file bugs, as Bill has
reiterated over and over. How many software companies do you
personally get begged by to optimise your specific use?
Wade
_______________________________________________
Cocoa-dev mailing list (email@hidden)
Please do not post admin requests or moderator comments to the list.
Contact the moderators at cocoa-dev-admins(at)lists.apple.com
Help/Unsubscribe/Update your Subscription:
This email sent to email@hidden