The big thing about this release is it is a huge leap forward to making Swift a cross-platform language, and not something only built for Mac/iOS

Swift 6 unifies the implementation of Foundation across all platforms. The modern, portable Swift implementation provides consistency across platforms, it’s more robust, and it’s open source. macOS and iOS started using the Swift implementation of Foundation alongside Swift 5.9, and Swift 6 brings these improvements to Linux and Windows.

Swift is designed to support development and execution on all major operating systems, and platform consistency and expansion underpins Swift’s ability to reach new programming domains. Swift 6 brings major improvements to Linux and Windows across the board, including support for more Linux distributions and Windows architectures. Toolchains for all of the following platforms are available for download from Swift.org/install.

    • roanutil_@programming.dev
      link
      fedilink
      arrow-up
      10
      arrow-down
      1
      ·
      edit-2
      3 months ago

      I can’t compare compile times to C++ or Rust but I would expect it to be in the same ballpark of Rust. However, the way I develop is with all external dependencies binary cached so I only have to build my code.

      As far as the language itself is concerned, I love it. It really is like a, “Diet Rust Lite”. By which I mean, it’s powerful but a lot less pedantic by doing some things for you that Rust puts on the developer. If you’re deploying in an environment that can tolerate less fine control over memory use and instructions, Swift is the better option IMO.

      If you’d like to read the observations of a team that can really evaluate Swift and compare it to other options: https://forums.swift.org/t/our-journey-with-swift-thus-far-some-notes-and-reflections/70510

      Id be happy to discuss finer points if anybody wants.

      Edit: Swift for C++ devs series by a swift core team member — https://www.douggregor.net/posts/swift-for-cxx-practitioners-value-types