4 ms·
Nobody loved objc. Apple forced people to do so. Sometimes people get Stockholm syndrome
by seydor 3y ago
Nobody loved objc. Apple forced people to do so. Sometimes people get Stockholm syndrome
- Conscat 3y agoProbably nobody has ever gotten Stockholm Syndrome, including the hostages in Stockholm.
- pavlov 3y agoIn a Babylon 5 episode (set a few centuries in the future) they call it the Helsinki Syndrome, which I thought was a clever little nod by the writer to remind us how a legend continues to mutate.
- asjfka 3y agoI'm not aware of a mention in B5 but they do call it Helsinki Syndrome in Die Hard.
- __d 3y agoWhat about those of us who liked it before Apple touched it?
- seydor 3y agoIt was a figure of speech. You were a tiny minority https://www.researchgate.net/figure/Popularity-Trend-of-the-Objective-C-Programming-Language-13_fig2_297909273 https://www.researchgate.net/figure/Popularity-Trend-of-the-...
- deleted 3y ago[deleted]
- mpweiher 3y agoI bought a NeXT because, among other reasons, it had Objective-C.
- pjmlp 3y agoMy graduation thesis was porting a particle engine from Objective-C/OpenGL into C++ on Windows, because NeXT's future was uncertain and my thesis supervisor wanted to get rid of his Cube.
- zer0zzz 3y agoIt’s probably easier to use than COM on windows. The other interesting thing about it was that because of the message passing and easily inspectable objc_methname sections in the macho it was probably super easy for those early iPhone app coders to write some early apps before apple even shipped their first AppStore and iPhone OS 2.0 sdk.
- pjmlp 3y agoCOM is great as idea. Unfortunately WinDev is so siloed into their way of thinking that never managed to create productive tooling. The exceptions being VB 6, .NET Native and C++/CX. It is somehow tragic that Delphi and C++ Builder are the most long lived toolchains that offer usable productivity with COM, and Microsoft itself is unable to keep productive tooling for COM going.
- another2another 3y agoNeXT loved it, and produced an amazingly ergonomic and productive application development experience on the back of it. In the early days of NeXT (legend, and youtube videos have it) they wanted to address some of the shortcomings of Mac, and some of the most consistent feedback was that it was so "darned hard" to program the Mac, so Objc (along with IB, etc) was the answer.
- pjmlp 3y agoThey actually did. When OS X was being developed, Apple was unsure about Objective-C potential adoption, so it made Java a tier 1 language, with an Objective-C bridge, just like Swift nowadays. When it was clear that the Mac OS community, raised in Object Pascal and C++, had no issues with Objective-C, Java Bridge was dropped from OS X, and Apple contributed their JVM implementation to Sun.
- tymscar 3y agoWow, never heard about this. Do you have more info?
- pjmlp 3y agoHere, "Steve Jobs reveals OS X Strategy WWDC 1998" => Java section https://www.youtube.com/watch?v=RJ5BM9hNnwg https://www.youtube.com/watch?v=RJ5BM9hNnwg Java Bridge to Objective-C https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/Legacy/JavaBridge/JavaBridge.html#//apple_ref/doc/uid/TP40001404 https://developer.apple.com/library/archive/documentation/Co... Relevant part from the introduction "The original OpenStep system developed by NeXT Software contained a number of object-oriented frameworks written in the Objective-C language. Most developers who used these frameworks wrote their code in Objective-C. In recent years, the number of developers writing Java code has increased dramatically. For the benefit of these programmers, Apple Computer has provided Java APIs for these frameworks: Foundation Kit, AppKit, WebObjects, and Enterprise Objects. They were made possible by using techniques described later in this document. You can use these same techniques to expose your own Objective-C frameworks to Java code." Cocoa Java integration https://developer.apple.com/library/archive/documentation/Cocoa/Conceptual/LanguageIntegration/LanguageIntegration.html#//apple_ref/doc/uid/10000112i https://developer.apple.com/library/archive/documentation/Co... Java deprecation on OS X https://developer.apple.com/library/archive/releasenotes/Java/JavaSnowLeopardUpdate3LeopardUpdate8RN/NewandNoteworthy/NewandNoteworthy.html#//apple_ref/doc/uid/TP40010380-CH4-DontLinkElementID_3 https://developer.apple.com/library/archive/releasenotes/Jav... And after the deprecation/removal, contribution of their own changes back to OpenJDK https://www.infoworld.com/article/2078216/apple-joins-oracle-s-openjdk-project.html https://www.infoworld.com/article/2078216/apple-joins-oracle...