Stands for Automatic Reference Counting.
Instead of having to add in separate blocks of code to count references and deallocate memory, ARC handles it.
Performs in a way similar to garbage collection, however allows manual memory management too.
Compiler examines a code and adds a retain or release message in the compiled code.