Comment by jackjeff
4 days ago
Isn’t this “high level rust” idea similar to swift?
Everything is ARC. Clones are cheap. But you still have a reasonable sound type system and no garbage collection.
I get it. Tooling on swift is meh the further you are from Apple, so I’m not suggesting it’s better.
But from a language point of view; is it not essentially a high level rust?
Ps. I don’t really know swift. Just asking where/why I’m wrong really.
Swift is a great language, sadly hampered by poor stewardship with terrible compile times, small community outside of apple ecosystems, etc.
I do hope it improves. Having a second compiler vendor that actually cares about making it usable without reaching for 3p compiler caching hacks would go a very, very long way.
The tooling is getting better and better, thankfully. Just recently they published their official VSCode extension on open-vsx for instance. It’s getting usable now!
It's not ARC though. They use fancy threading mechanisms to avoid having to check on every access. Much faster.
It is still primarily ARC. There's simply some optimizations in place, but still no real GC. So you'll never get those dreaded pauses at runtime. It COULD be a real rust competitor if a couple issues were addressed, mostly devx (in the standard tooling sense not the misuse of term this article has, meaning expressiveness, correctness, etc. which Swift already has in spades)
"Swift uses Automatic Reference Counting (ARC) to track and manage your app’s memory usage."
https://docs.swift.org/swift-book/documentation/the-swift-pr...
I meant 'not like rust-Arc' :)
... which is what I thought people were referring to.
Yes - it's ref counting, but it's not like 'Arc' at all - ARC is way more thread aware and most 'access' doesn't have to do thread checking. Much faster.
So - using Rust 'Arc' would not be at all like using Swift 'ARC' in the end.