Hacker News new | ask | show | jobs
by ironlake 890 days ago
I miss the chaos of Obj-C. Swift makes way too much sense.
6 comments

Made me chuckle. Objective-C was my _first_ language. When I say first, I mean it was the first one I put any effort into learning when I was in 7th grade or so. It was chaos and the only way I managed to get any apps out the door was basically pattern-matching what people did in stack overflow.

I wouldn't wish Obj-C as a first language on any soul. Swift on the other hand? Jokes aside, that's a beautiful language.

Sure, but that was intentional: the assumption was that you had already learned C. Objective-C is a great language if you know C and you want a SmallTalk-style message dispatch runtime.

It was better before ObjC 2.0; dot syntax makes it hard to tell out of context what a line of code is doing, which was never a problem with the original language.

It was also better before UIKit; The killer app is Interface Builder, which is unbelievably painful to use with UIKit compared to how it used to be with pre-CoreAnimation, pre-autolayout AppKit.

Funny, I'm the opposite. Objective-C was my first language, and I absolutely love it. It's so beautiful and chaos-free.

Swift on the other hand? Full of chaos and ugly (func, let vs var - really).

The only part about Obj-C I liked is that raw C is valid Obj-C. This made writing iOS apps in 2016 feel so weirdly antiquated.
Obj-C++ is the ultimate in glorious insanity.
Ran into Steve Naroff a few years ago and the first thing he said to me was "Wow, I still can't believe we managed to get Objective-C++ to work!"
Except for the Obj-C related parts of Swift!
They just left that in to make it fun.
@YES
It's been many years since Obj-C was relevant to my life, but I remember reading about some of the implementation details in the runtime and just absolutely boggling. Not in a bad way, a "wow, they've really done about as much as anyone could possibly do to get this performant" way. Distinct mental image of starting at a nice clean relativistic scale and then zooming down into quantum nuttery.

We need a Powers of Ten with programming languages.