Live data from Hacker News

The Subjective Charms of Objective-C

wired.com

41–50 of 56 posts

Re: The Subjective Charms of Objective-C

#41
post #27
post #11

It's a shame that Objective-C never really caught on outside of the NeXT/Apple ecosystem. User interfaces benefit greatly from dynamism, and all the UI toolkits I've used for C and C++ try to emulate message passing in one way or another: from WinAPI's SendMessage, to GTK and Qt's signals and slots. I'm surprised the wider FOSS community didn't adopt the language. I've been building a GTK4 app recently, and the macro…

It’s a shame that C is the only native mainstream Abi stable language to catch on broadly. Objc or swift would be nice for library developers on win/lin even if it’s only for writing the entry points to their library.

There is no C ABI, even though this gets repeated a lot.

There is only OS ABI, and the ABI of C compilers tend to overlap with the OS ABI, on the cases where the OS was written in C.

This is easily visible outside the UNIX ecosystem.

Re: The Subjective Charms of Objective-C

#42
post #11

It's a shame that Objective-C never really caught on outside of the NeXT/Apple ecosystem. User interfaces benefit greatly from dynamism, and all the UI toolkits I've used for C and C++ try to emulate message passing in one way or another: from WinAPI's SendMessage, to GTK and Qt's signals and slots. I'm surprised the wider FOSS community didn't adopt the language. I've been building a GTK4 app recently, and the macro…

> User interfaces benefit greatly from dynamism

I'm not sure. I've written so much GUI code over several decades, and I think dynamism is only slightly helpful. I've been writing a new GUI in TS (not at all ready for publicity yet) that aims to rethink GUIs from the ground up as if the 80s and 90s never happened, but with the benefit of hindsight, much like Go did with C. I've been meaning to do a proper write up on some of the innovations I think are genuine improvemenets over the status quo. I should probably do one at a time and start today instead of waiting until release like I planned. But in my GUI, dynamism is only needed in maybe one or two core places. I'm not sure it makes any use of the fact that JS has string keys (equiv of objc_msgSend/etc), and can probably be written in boringish C++ just fine, or maybe even boringish Go, although op overloading would clean up one or two APIs really nicely.

Re: The Subjective Charms of Objective-C

#43

Earlier quoted context omitted.

> I decided to not use the full GNUstep Foundation This is why it has been an ordeal. I came to a similar impasse. It went away when I changed my mind. It's a little bloated I'll give you that, but it's not that bad. Certainly better than bootstrapping 10+ years worth of language features

> Certainly better than bootstrapping 10+ years worth of language features That's the thing, I think ignoring those library features and rethinking the role of message passing OOP in plain C can actually lead to a much better language. But I do need a root class.

There is a huge opportunity cost there. But to each his own.

Re: The Subjective Charms of Objective-C

#44

Cold take: Objective-C was best appreciated by using Interface Builder back before iPhones, CoreAnimation, and autolayout. As Interface Builder became less useful and more painful, the dynamic nature of the language became a liability instead of an essential attribute.

Interface Builder never should’ve been merged into Xcode. It’s only gone downhill since it was. Not that it was perfect as a standalone tool but it was better, particularly for Mac development.

Re: The Subjective Charms of Objective-C

#45

Never used Objective-C or have done any serious programming (I work as a DE which mostly do data modelling, so I don't consider myself a serious programmer), but I feel the same as the author. The work has bogged down whatever interest I have in programming, and the only sane solution is to somehow magically remove all financial burdens, go into a cabin in a mountain, and program my own projects and read some science…

I don't know if this will be helpful or inspirational or depressing, but your comment made me think of Paul Lutus, who pulled off at least some parts of the dream of living in a cabin and writing software. Here's an interview he did with Adam Gordon Bell on Bell's CoRecursive podcast (transcript and audio):

https://corecursive.com/remote-developer/

To give just a taste, here's a forum post that quotes a few highlights from that CoRecursive episode:

https://retrocomputingforum.com/t/remote-developer-1970s-app...

Re: The Subjective Charms of Objective-C

#47
post #22

Objective C was a far more elegant and powerful solution to the problem of extending C to be "object oriented" than C++. The square brackets made very clear when you were engaging with SmallTalk style message passing semantics. But the language was still a full superset of C, allowing calling any legacy code you wanted. Or using C syntax for performance critical parts. And for as much criticism as the language receiv…

The hate Objective-C has received for its syntax is unreal. It’s a minimalistic, easy-to-navigate language, but people assumed Swift would be easier just because it looks more like Java and C#. Meanwhile, Swift is such a mess that even its own creator said the following in an interview: “Swift, the original idea was factor complexity (…) massively failed, in my opinion (…) Swift has turned into a gigantic, super comp…

I lost hope for Swift after seeing a minor holy war about the c-style for loop.

Re: The Subjective Charms of Objective-C

#48
post #11

It's a shame that Objective-C never really caught on outside of the NeXT/Apple ecosystem. User interfaces benefit greatly from dynamism, and all the UI toolkits I've used for C and C++ try to emulate message passing in one way or another: from WinAPI's SendMessage, to GTK and Qt's signals and slots. I'm surprised the wider FOSS community didn't adopt the language. I've been building a GTK4 app recently, and the macro…

Good 'ol GNUStep. I think the only thing I ran that relied on it was WindowMaker, which was an excellent, minimalistic window manager back in the day.

You're bringing back memories. I ran WindowMaker on my Sun desktop (Solaris 2.6, I think?), back in the late 90's. I spent days customizing that system, compiling everything from source.

Re: The Subjective Charms of Objective-C

#49
post #22

Objective C was a far more elegant and powerful solution to the problem of extending C to be "object oriented" than C++. The square brackets made very clear when you were engaging with SmallTalk style message passing semantics. But the language was still a full superset of C, allowing calling any legacy code you wanted. Or using C syntax for performance critical parts. And for as much criticism as the language receiv…

The hate Objective-C has received for its syntax is unreal. It’s a minimalistic, easy-to-navigate language, but people assumed Swift would be easier just because it looks more like Java and C#. Meanwhile, Swift is such a mess that even its own creator said the following in an interview: “Swift, the original idea was factor complexity (…) massively failed, in my opinion (…) Swift has turned into a gigantic, super comp…

Well arguably he stated the whole thing since Chris wanted it to be one language to rule them all from assembly to javascript. It was that moment I knew Swift is wrong from birth.

Now 10 years later, Apple is stuck with hundreds of engineers trying to improve the language, rewrite some of the API in Swift. And Apps as well. All with very little user benefits. This actually reminds me of Apple without Steve Jobs era.

Imagine if Apple had simply said we are going to use Objective-C for another 10 years on a wait and see approach. I think the decline in Apple's quality is simply because when Apple has too many resources, different teams are all trying to get resources and put something out for credit in Resume Driven development.

Re: The Subjective Charms of Objective-C

#50
post #42
post #11

It's a shame that Objective-C never really caught on outside of the NeXT/Apple ecosystem. User interfaces benefit greatly from dynamism, and all the UI toolkits I've used for C and C++ try to emulate message passing in one way or another: from WinAPI's SendMessage, to GTK and Qt's signals and slots. I'm surprised the wider FOSS community didn't adopt the language. I've been building a GTK4 app recently, and the macro…

> User interfaces benefit greatly from dynamism I'm not sure. I've written so much GUI code over several decades, and I think dynamism is only slightly helpful. I've been writing a new GUI in TS (not at all ready for publicity yet) that aims to rethink GUIs from the ground up as if the 80s and 90s never happened, but with the benefit of hindsight, much like Go did with C. I've been meaning to do a proper write up on…

Do post your writing if you get around to it.
Post reply on HN