Automatic Reference Counting was introduced at the 2011 WWDC, in Session 323. If you want to see the original presentation, feel free to visit https://developer.apple.com/videos/play/wwdc2011/323/.
ARC is made possible by Clang and LLVM. LLVM and Clang are two technologies that enable compiling C, C++, and Objective-C code. LLVM is also used alongside the Swift compiler. With ARC, a Clang feature, developers don't have to write the tedious retain and release calls. There are multiple benefits to letting the compiler handle it, as follows:
- Memory management is difficult
- The compiler is often more correct than you are
- There are fewer lines of code to write
- It has the same performance as manual reference counting
With Swift being a modern language and the successor of Objective-C, you've never had to call retain. Swift programs...