Live data from Hacker News

SwiftUI After 7 Years

ykvm.com

301–310 of 343 posts

Re: SwiftUI After 7 Years

#301
post #255

Earlier quoted context omitted.

So you think that they would be able to build MacOS X and Cocoa today if they didn't already exist?

Would they want to? If you were to build a system with no requirement for backward compatibility with cocoa or macOS, or even knowledge from such a thing existing, we have still moved forward three decades from not just NeXT, but the computing industry that NeXT was built to serve. I'd assume their requirements would be drastically different, and the system they created would be drastically different as a result. The…

> Would they want to?

The point is that they cannot, they do not have the technical skills to do so, whether they want to or not.

Re: SwiftUI After 7 Years

#303
post #290

Earlier quoted context omitted.

Yes, they don't ever openly admit mistakes. But they do quietly drop or fix them, covertly acknowledging they were mistakes. Often with this messaging: "we have this new shiny thing that is even better than the old shiny thing (that was really a turd)". Remember "garbage collection"? Or "modern syntax"? Or CocoaJava? And with hardware they had their "come to Jesus" moment a while ago. And then hit it out of the ballp…

CocoaJava was when they were not certain devs educated in C++ and Object Pascal would ever accept Objective-C. Garbage collection is still there, regardless of the marketing message without fundamentals from CS theory of automatic memory management algorithms, because they need to blame something else other than themselves, Apple does no wrong.

> CocoaJava was when they were not certain devs educated in C++ and Object Pascal would ever accept Objective-C.

They actually went all in on CocoaJava. I was there for the WWDC.

> Garbage collection is still there

"Garbage collection is deprecated in OS X 10.8. Use ARC instead—see Transitioning to ARC Release Notes."

https://developer.apple.com/documentation/foundation/nsgarba...

Re: SwiftUI After 7 Years

#304
post #290

Earlier quoted context omitted.

CocoaJava was when they were not certain devs educated in C++ and Object Pascal would ever accept Objective-C. Garbage collection is still there, regardless of the marketing message without fundamentals from CS theory of automatic memory management algorithms, because they need to blame something else other than themselves, Apple does no wrong.

> CocoaJava was when they were not certain devs educated in C++ and Object Pascal would ever accept Objective-C. They actually went all in on CocoaJava. I was there for the WWDC. > Garbage collection is still there "Garbage collection is deprecated in OS X 10.8. Use ARC instead—see Transitioning to ARC Release Notes." https://developer.apple.com/documentation/foundation/nsgarba...

> They actually went all in on CocoaJava. I was there for the WWDC.

Of course they did, until they saw the Objective-C adoption numbers were high enough.

> "Garbage collection is deprecated in OS X 10.8. Use ARC instead—see Transitioning to ARC Release Notes."

ARC is garbage collection, of course mighty Apple won't acknowledge that, because it doesn't suit their marketing, and they are to sell ARC after the Objective-C 2.0 conservative GC failure, given the underlying C semantics.

So they need to sell ARC as the great saviour, so much better than "GC".

https://gchandbook.org/contents.html

https://web.eecs.umich.edu/~weimerw/2008-415/reading/bacon-g...

Re: SwiftUI After 7 Years

#305

Earlier quoted context omitted.

The problem with ObjC was mainly syntax, bolted on over many years on top of a C core. It was grown rather than designed, and it shows. But there's nothing wrong with the runtime. Swift should have just been a much improved syntax over that same runtime. It would have avoided so many headaches. For one they wouldn't have made the awful decision to have return-type overloading and completely ruin the typechecker's per…

Gotta take issue with the characterization of “bolted on”. That’s a design feature and it’s huge. It made interoperability trivial. You can write C, C++, and Objective-C within the same source file .

Bolted on wasn't a value judgement, it was literally bolted on top, it is a strict superset (unlike C++, which is also bolted on, but poorly, since it partially breaks compatibility).

The syntax growing over time is a real issue though. Every time I have to write __bridge_retain I get hives.

Re: SwiftUI After 7 Years

#306

Earlier quoted context omitted.

In what sense?

In a technical sense. Do the remaining NeXT employees still at Apple have the technical skills to create Mac OS X and Cocoa?

Yes, I would imagine so. I don't think the result would look exactly like what it does now since needs have changed, but I can imagine that they could do it.

Re: SwiftUI After 7 Years

#307
post #304

Earlier quoted context omitted.

> CocoaJava was when they were not certain devs educated in C++ and Object Pascal would ever accept Objective-C. They actually went all in on CocoaJava. I was there for the WWDC. > Garbage collection is still there "Garbage collection is deprecated in OS X 10.8. Use ARC instead—see Transitioning to ARC Release Notes." https://developer.apple.com/documentation/foundation/nsgarba...

> They actually went all in on CocoaJava. I was there for the WWDC. Of course they did, until they saw the Objective-C adoption numbers were high enough. > "Garbage collection is deprecated in OS X 10.8. Use ARC instead—see Transitioning to ARC Release Notes." ARC is garbage collection, of course mighty Apple won't acknowledge that, because it doesn't suit their marketing, and they are to sell ARC after the Objective…

> until they saw the Objective-C adoption numbers were high enough.

Nope. Until they saw that (a) CocoaJava was a complete dud, not just technically, but also in terms of developers buy in and (b) Cocoa/ObjC was accepted well by a large part of the dev community.

> > "Garbage collection is deprecated in OS X 10.8. Use ARC

> ARC is garbage collection,

In terms of the Apple ecosystem, "Garbage Collection" refers to the failed attempt to introduce a tracing garbage collector. Apple/OSX always had reference counting (introduced by NeXT pre-acquisition with Foundation in EOF and later in OPENSTEP 4.0), which technically is also a form of garbage collection, but again in this case the terms are distinct.

> So they need to sell ARC as the great saviour, so much better than "GC".

Again, in the Apple ecosystem, "Garbage Collection" always referred to the tracing collector, even before they had to abandon it due to it not working.

And ARC is markedly better than their GC, but only arguable and at best marginally better than the reference counting they had pre-GC, and in some significant sense worse. Which is why I generally don't use ARC. For my style of programming the benefits are minuscule and the drawbacks real.

Re: SwiftUI After 7 Years

#308

Earlier quoted context omitted.

Why should I need to do any testing ? I'm just going to keep on not believing you until you back up your claims. And your iPad example doesn't make sense at all, you compared 2 Macbooks and now you're talking about another OS altogether. > idk what to say. You could just tell us one example of something that's faster on your 2019 Macbook Pro 15 versus a M5 Macbook pro and how to reproduce it.

> Why should I need to do any testing ? I'm just going to keep on not believing you until you back up your claims. And why should he care what you think, because you have already made up your mind and don't care at all about facts or the truth.

What makes you think I don't care at all about facts or the truth ?

Re: SwiftUI After 7 Years

#309
post #304

Earlier quoted context omitted.

> They actually went all in on CocoaJava. I was there for the WWDC. Of course they did, until they saw the Objective-C adoption numbers were high enough. > "Garbage collection is deprecated in OS X 10.8. Use ARC instead—see Transitioning to ARC Release Notes." ARC is garbage collection, of course mighty Apple won't acknowledge that, because it doesn't suit their marketing, and they are to sell ARC after the Objective…

> until they saw the Objective-C adoption numbers were high enough. Nope. Until they saw that (a) CocoaJava was a complete dud, not just technically, but also in terms of developers buy in and (b) Cocoa/ObjC was accepted well by a large part of the dev community. > > "Garbage collection is deprecated in OS X 10.8. Use ARC > ARC is garbage collection, In terms of the Apple ecosystem, "Garbage Collection" refers to the…

Ah, the famous reality distortion field where industry terms get the meaning that suits Apple's marketing team and developer advocates.

Re: SwiftUI After 7 Years

#310

Death by a thousand cuts. First the tech community screamed about memory leaks, so they bolted ARC (automatic resource counting) into Cocoa since unlike C++, Objective-C had no RAII. With swift to be compatible, they forced ARC to all objects. To make RAD (rapid application devolpment), they forced InterfaceBuilder onto the dev community, where artists do layout, but engineers do code. With variable sized screens, RA…

ARC was basically avoiding typing retain/release when using Cocoa libraries. If you don’t want to use ARC in Swift, use Unmanaged.

Same for autolayout, just use view frames and bounds if you want.

And Interface Builder comes all the way from Next.

Post reply on HN