11 ms·
Oooh shots taken at Rust (~56:00). He claims rust doesn't have much adoption and swift caters better to application programmers. Wonder what the rust community
by newsat13 10y ago
Oooh shots taken at Rust (~56:00). He claims rust doesn't have much adoption and swift caters better to application programmers. Wonder what the rust community thinks about it.
- xenadu02 10y agoI didn't take it that way; he said Rust was a very interesting language. It seems like he believes pervasive borrow checking is not the right approach for the average application developer, even if it is the right approach for systems programming. He also mentioned eventually having a mode that only uses borrow-checking without ARC, e.g. for writing firmware. Rust originally had lofty goals to support compile-time lifetime proving and GC mode; GC was abandoned for sensible reasons. Swift uses ARC, so it is trying to support full-ARC, mixed mode, and compile-time lifetime. Whether that is achievable remains to be seen.
- diimdeep 10y agoAlso later he mentions that, Swift might add `borrow checking` but not at the core of type system and required to be used like in Rust, but as extra optional feature, that way Swift is still easy to get started with, but for more advanced programmers for example in kernel development is will be convenient addition.
- tejinderss 10y agoI wish rust could have taken a similar approach. I want to do rust development for general purposes as opposed to writing kernels and browser engines in it. I think swift or go are better targeted for these purposes, I wish swift scene on linux becomes viable in the next version.
- jnbiche 10y ago> I wish rust could have taken a similar approach. Then use Swift. Other than the approach to memory, Swift is extremely similar to Rust. > I wish swift scene on linux becomes viable in the next version. Swift 3.0 is totally viable on Linux. And Swift package manager works great, although it's not quite as nice as Cargo (yet!). I've been very impressed with Swift on Linux, but I've yet to use it for production (although there are lots of folks who are). There are some very nice web frameworks for Linux in Swift. I'd say that for web, Swift on Linux is more advanced than Rust. Take a look at Perfect, Zewo, Kitura, etc. They've even got lots of authentication/authorization plugins, which last I checked no Rust framework had.
- tejinderss 10y agoThere are lots of things missing in the standard lib though: https://github.com/apple/swift-corelibs-foundation/blob/master/Docs/Status.md https://github.com/apple/swift-corelibs-foundation/blob/mast..., it is improving for sure. I am waiting for it to become more mature as well.
- binarycrusader 10y agoSwift's ties to Grand Central Dispatch for concurrency are wholly unfortunate though. I would have far preferred to see a native language take on that instead of porting GCD to every platform.
- favorited 10y agoThere will be a Swift-specific concurrency story, it's just a lower-priority since GCD is available to fill in the gap for now. Here's an overview of how theoretical language features could enable library implementations of coroutines+channels, async/await, or actors: https://github.com/apple/swift/blob/master/docs/proposals/Concurrency.rst https://github.com/apple/swift/blob/master/docs/proposals/Co...
- chrislattner 10y agoI'm sorry if it came across that way, I have a ton of respect for Rust and the Rust community. I was just trying to say that its design forces discussion of the ownership model to be very early on in the description of the language. It is typically in the first page/chapter of the tutorials I've seen. This approach doesn't align well with Swift's approach of progressive disclosure of complexity.