Obj-C has the significant advantage of being a fairly thin layer over plain C so it's lightweight and easy to port. This means you can bootstrap it on a new platform pretty easily, write in a fairly high level language for most of your application code, and transparently drop down into C for performance.
Had it not been for mobile I think Obj-C would have quietly died out but it happens to embody a pretty good set of compromises for small, resource constrained devices. Recent developments like ARC and blocks make it a lot more pleasant to use now than it was even a few years ago.
Had it not been for mobile I think Obj-C would have quietly died out but it happens to embody a pretty good set of compromises for small, resource constrained devices. Recent developments like ARC and blocks make it a lot more pleasant to use now than it was even a few years ago.