Hacker News new | past | comments | ask | show | jobs | submit login

While there are almost certainly other considerations as well, ARC definitely makes Objective-C much less dynamic.

The Objective-C compiler gets significantly more strict with ARC turned on, for example sending unknown messages is an error instead of a warning. Various runtime functions that used to be quite safe also become dangerous, for example it used to be OK to send performSelector: style messages with non-object returning messages (void) and simply ignore the result. That now becomes a crash as ARC tries to retain the return value. So in order the be compatible with ARC, the "cheap and cheerful" reflection that ObjC has isn't really sufficient.

ARC is predicated on the compiler having essentially a statically checkable call-chain.




Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: