Forgot to refer to the excellent blog post by Allen Bauer on Automatic Reference Counting in Delphi for iOS. Even if that blog post in not new any more, if you missed it, it is certainly worth reading. It explains some historical background on the various memory models adopted by Delphi and specifically on why the ARC implementation was done in the given way. The link is:

Give in to the ARC side: blogs.embarcadero.com/abauer/2013/06/14/38948

There is also a long and lively discussion... as expected.

As an aside, Andreas Hausladen is working on a weak objects references implementation for Delphi at github.com/ahausladen/WeakObjectReferences.

I do have another post in the works on ARC, which is why I waited before blogging about Allen's post... but given this is taking a few more days than expected, I decided to go ahead with the links for now.