Get the latest tech news

Objective-C is just, like, a leaky abstraction over C


Recently I came across this 10 year old post by Robert Atkins: Objective C is like Jimi Hendrix . It is about reconciling admiration for Obj...

So if you'e new to Objective-C and, as I am, struggling to come to terms with the fact that it's one great big leaky abstraction on top of C, put yourself in the shoes of an 80s C programmer and remember you get to use these neat "modern" features in a systems programming language. So much so, that in the Apple developer ecosystem, the much larger C part started to be regarded as a completely separate language that most devs never dared touch. But Smalltalk requires a fairly large VM to run, typically coded in C or in Squeak's case, C plus BCPL-encoded-in-Smalltalk that gets automatically translated to C. Objective-C and Objective-Assembler showed that you don't actually need all that, just a tiny messaging function on top of bare machine is not just sufficient, it's also faster, integrates better and is easier to implement.

Get the Android app

Or read this on Hacker News

Read more on:

Photo of leaky abstraction

leaky abstraction