News for hackers. Stuff that matters.
Re:Swift 3.0 Unsafe World by masklinn on Tuesday September 27, 2016 @11:09AM (#12590162)
> C. Every object in your language which is reference counted needs a field to hold the reference count. Or you need a special object in its stead which "points" to your object, like a shared pointer.

For a long time (until the 64b class pointers I think) Objective-C used external tables of reference counts instead of embedding refcounts in objects.

Re:Swift 3.0 Unsafe World by mayoff on Tuesday September 27, 2016 @12:56PM (#12591044)
The side table only gets a slot for an object when the object is retained (has its reference count incremented) after creation. (Every object starts with a count of 1 at creation.) Before ARC, you could certainly have lots of objects that were never retained after creation. Since ARC tends to be more careful than a human about retaining objects (meaning it retains objects in more places), I don't know how much more load ARC puts on the side table, but I suspect it's not zero.