Redesigned Swift.org is now live

2025-06-0419:26174150swift.org

Swift is a general-purpose programming language built using a modern approach to safety, performance, and software design patterns.

Swift is the only language that scales from embedded devices and kernels to apps and cloud infrastructure. It’s simple, and expressive, with incredible performance and safety. And it has unmatched interoperability with C and C++.


It's the combination of approachability, speed, safety, and all of
Swift’s strengths that make it so unique.

Build with speed and performance.

Swift meets the most performance-critical needs, while allowing your code to remain expressive and approachable. Swift compiles directly to native code and provides predictable memory management.

// Vectorized check that a utf8 buffer is all ASCII
func isASCII(utf8: Span<SIMD16<UInt8>>) -> Bool { // combine all the code units into a single entry utf8.indices.reduce(into: SIMD16()) { // fold each set of code units into the result $0 |= utf8[$1] } // check that every entry is in the ASCII range .max() < 0x80
}

Concise code. Powerful results.

Swift empowers you to write advanced code in a concise, readable syntax that even a beginner can understand. Swift supports object-oriented, functional, and generic programming patterns that experienced developers are familiar with. Its progressive disclosure allows you to pick up the language quickly, taking advantage of power-user features as you need them.

import ArgumentParser // Complete implementation of a command line tool
@main struct Describe: ParsableCommand { @Argument(help: "The values to describe.") var values: [Double] = [] mutating func run() { values.sort() let total = values.reduce(0, +) print( """ Smallest: \(values.first, default: "No value") Total: \(total) Mean: \(total / Double(values.count)) """) }
}

Protect memory safety.

Swift prioritizes safety and eliminates entire classes of bugs and vulnerabilities by its design. Memory safety and data race safety are core features of the language, making them straightforward to integrate into your codebase. Safety is required at compile time, before your applications are ever run.

let transform = Affine2DTransformBuilder() .translate([10.0, 20.0].span) .rotate(30.0) .build() let v = [11.0, 22.0, 1.0] // Call C functions safely with Swift types
let u = mat_vec_mul( transform, rowCount, colCount, v.span, allocator)
let uMagnitude = vec_mag(u.span)

Read the original article

Comments

  • By ChocolateGod 2025-06-0420:4910 reply

    Swift seems like a really nice language that's held back by it's association with Apple.

    Seems to hit a sweet spot of a fast/compiled (compared to Javascript), memory safe (compared to C++), object orientated (compared to Go) and easy to write (compared to Rust).

    Doesn't seem like there's any maintained bindings for Qt though, although there are some interesting ones for GTK (e.g. https://git.aparoksha.dev/aparoksha/adwaita-swift)

    • By ChrisMarshallNY 2025-06-0422:063 reply

      > Swift seems like a really nice language that's held back by it's association with Apple.

      Or empowered by its association with Apple. That's a pretty big pond.

      I like Swift, and I write software for Apple devices. I don't really care, whether or not it supports other platforms. For my backend work, I tend to use PHP, because there's a very broad base of servers that support it, it's good enough, fast enough, and, doggone it, people like it...

      Another comment mentions that languages aren't really the issue, platforms are, and enumerates a number of application contexts, and the languages that are used to develop in those contexts.

      If you want to write native Apple software, then you need to either use ObjC, or Swift. You can use C or C++, and JavaScript, if you don't mind gluing them on, but native is Swift/ObjC, and Apple doesn't really do much to support ObjC (but they have to, anyway, because I guarantee that some of the biggest apps out there, still run with ObjC -including some Apple ones).

      I use Swift. I write both UIKit and SwiftUI, but find that UIKit is what I use to deliver a great user experience. I have to use SwiftUI, for a few applications (like Watch apps), and am constantly slamming into its limitations.

      • By esseph 2025-06-0422:531 reply

        Given this comment, the next one that starts with something like "I don't think anybody cares about Apple here" made me giggle.

        • By ChrisMarshallNY 2025-06-051:182 reply

          Eh. That's why I run showdead = no. That comment obviously got nuked.

          It's really fun, knowing that some folks hate me, just because I write software for Apple platforms.

          I don't hate them back. That kind of hatred isn't very good for you. It's Commissioner Dreyfus-level obsession.

          But this also shows what a tiny, tiny minority of people are represented here. Apple's a three-trillion-dollar company, because most folks aren't like us.

          • By johannes1234321 2025-06-051:231 reply

            I don't believe that is the point of the thread.

            The thread was about "Swift would be a good language, but all the attention and focus is on the Apple ecosystem and everybody using it for something else is an outlier and if you don't want to deal with apple it's a hard game"

            • By ChrisMarshallNY 2025-06-051:34

              My response was directed at that. I said that its lack of non-Apple support isn’t a bad thing for many folks.

              It was designed by Apple, for Apple. They only care about non-Apple support, if it results in Apple software for Apple hardware. I suspect they will be using it for some of their new custom server farms (or Python).

              Mercenary as hell, but it’s not an uncommon stance; especially with hardware companies. I had to work with that attitude all the time, at my last job.

          • By esseph 2025-06-054:572 reply

            I don't think you understand.

            The comment was basically "nobody gives a shit about apple stuff".

            This comes off as very "I am a main character post" on your part.

            • By ChrisMarshallNY 2025-06-055:361 reply

              We are all “main characters” of our own stories. If we keep the focus on ourselves, and what we have learned, from our own experiences, then we’re likely to be writing about stuff we know.

              I have had decades of experience with people saying “I hate you” because I write software for Apple systems, so I’m not imagining it. I also know that I’m not alone. It’s not exactly a “cutting edge” mindset.

              Personally, I’m offended. I think that it’s shallow. I have plenty of other fine qualities to hate.

              I’m always tempted to project motivation and intention onto others, but I’m not very good at it, so I keep it to myself.

      • By Klonoar 2025-06-0423:411 reply

        I mean, as long as Apple continues to support ObjC, you can use any language that has an ObjC interface. I've shipped native AppKit stuff in Rust before, people have done Ruby, etc.

        ObjC is one of the greatest "glue languages" to have existed IMO.

        • By ivm 2025-06-054:181 reply

          Yup, I've been writing in C# for Apple platforms since 2018. The tooling is a bit clunky, but great experience otherwise.

          • By ChrisMarshallNY 2025-06-055:41

            We used to write algorithms in C++. The UI was ObjC, though (or C#, for Windows).

      • By bigyabai 2025-06-051:02

        > Or empowered by its association with Apple.

        If your response to "Swift is being limited by Apple" is "well at least Apple hasn't killed it yet" then yeah, you're proving their point. Assuming you're right, and Swift is being empowered by Apple, then what is the language without Apple's support? Another .Net situation. They control the vision, the pitfalls of Swift as a language are the result of Apple's discretion. You can't blame the community for refusing to do Apple's dirty work pro-bono.

        And honestly, Apple shouldn't be unhappy with where Swift is at right now either. They got exactly what they wanted from it, having third-party language stakeholders was never part of the equation for supporting Swift. A best-case scenario like Mono for Dotnet wouldn't be worth it, and Apple devrel is already in the toilet to boot. Might as well just go mask-off and run the whole thing like any other iOS library, but that's just my $0.02.

    • By bobajeff 2025-06-0421:393 reply

      My view is that languages don't matter only libraries and engines. If you want to make an iOS app then Swift is for you. If you want to make an Unreal Engine game then C++. If you want to make a website then JavaScript. If you want to play with Bevy or Servo libraries then Rust. If you want to play with Blender or do anything with AI then Python.

      • By mdhb 2025-06-0422:001 reply

        I think that argument is on increasingly shaky ground these days as the barriers are starting to come down in a lot of ways.

        First in the sense of hand crafted interop solutions that modern languages provide.

        Take Dart for example as something that has a (by comparison) very small package ecosystem.

        However it has support for interop across: JavaScript, Java, Objective C, C, C++, Rust, Swift, Kotlin and Go I believe off the top of my head.

        Then you also have efforts like WebAssembly and specifically the in-development component model which seeks to totally break down that language specific package ecosystem and make importing and working with another language as easy as it is when importing a package from your own language ecosystem.

        So with those things in mind, however true that might be today, I don’t think it’s a strong argument moving forward.

        • By mk89 2025-06-0423:163 reply

          I am not sure but your comment seems to make the point of the person you're answering to.

          Dart is used probably and exclusively in one context (= library): Flutter. Nobody would dream of writing anything else with it and put it in production.

          Why? Because despite the interop, all the libs are still in the original language and they shine in the language they were written with. And Dart has no ecosystem comparable to the top 5-10 most used languages.

          Try to build bindings for QT in Dart. That alone would require a company just to make that happen. You'd have to pay developers just to make that interop work - that's what Riverbank did with pyqt. No other companies did that, as far as I know (until Nokia developed pySide). And what for?

          So I somehow agree with the previous comment, unless someone writes really good bindings. That's rare, though, and from my experience it's mostly to put something in legacy mode.

          • By mdhb 2025-06-056:451 reply

            This is purely a vibes based answer and is actively wrong on a number of fronts. I don’t know what caused you to answer so confidently.

            • By mk89 2025-06-0518:42

              Care to elaborate?

          • By wiseowise 2025-06-056:25

            Why would they need bindings for Qt? They already have something much better: Flutter.

          • By refulgentis 2025-06-052:071 reply

            There's at least 2 bindings for QT in Dart (in general, darts a pretty big pond, there's been a strong steady uptake of Flutter that's not delineable enough in a way to concisely update impressions it's small)

            • By mk89 2025-06-0518:471 reply

              You mean the 5 years old 1 person's experiment [0] or the more recent 1 year old POC [1].

              Would you build a product with either of these things and sell it and put your name on it? I wouldn't.

              [0] https://github.com/therecipe/flutter

              [1]: https://github.com/KDABLabs/dart-qtbindings

              • By refulgentis 2025-06-0523:24

                Yeah, and I agree with you, I would think its nuts too. A couple years ago I didn't have any experience to tell me otherwise and would never have done that -- I'm only up for it now because I've had a great and literally painless time wrapping ONNX, llama.cpp, and a couple other C++ libraries using generated bindings.

                I agree strongly on that it is good to make software architectural decisions, involving business, based on if you have a bunch of other people with the same problem shape as you.

                And on specifically the idea that Darts not exactly hosting multiple UI frameworks, even though it theoretically could. (I don't know enough about Qt to know who uses it and why, my understanding vaguely is Linux UI. Canonical is all-in on Flutter, for whatever reason, so I discount the probability that Dart would naturally gain Qt bindings, if it was non-small)

      • By pornel 2025-06-0516:251 reply

        There is a circular dependency — the language strongly influences what libraries/engines can and will be written.

        Bevy and Servo wouldn't exist without Rust. Unreal probably wouldn't succeed without C++.

        Languages may also matter for other reasons than just their feature set. Node.js got traction specifically because it was JavaScript.

        Even though Fortran had state-of-the-art numeric libraries, Python enabled numpy to have the sweet spot of usability with good enough speed.

        The killer libraries need years of effort to build them. That won't happen if users don't want to use the language, or the language isn't good enough for the task.

        For Swift to have killer libraries, users must first choose Swift to build them. Catch22.

        • By pjmlp 2025-06-066:36

          They chose Swift if they want to get money on Apple's ecosystem.

      • By pjmlp 2025-06-0511:31

        Spot on, for a long time, the project and platform dictactes the languages I use, not the other way around.

        Being a YXZ Developer trying to fit YXZ into every domain, means that for many scenarios one ends up yak shaving until the foundations are in place for the actuall work one is supposed to do.

        And even then, the tooling (IDE, debugging, build, libraries) will fail short from the platform native experience.

        My motto is to always be curious and learn what is out there just in case, however in what concerns production work, only what is directly supported out of the box by the platform matters.

        Typescript is maybe the exception, then again it is really a JavaScript linter in practice, the team has learned not to add additional language features.

    • By sedatk 2025-06-0421:112 reply

      Swift also doesn't have a mark&sweep GC, and uses reference counting, which makes its memory footprint much smaller than GC-based runtimes.

      • By 90s_dev 2025-06-0421:223 reply

        It also means it's easy to create reference cycles that never get deallocated. Especially in callback anonymous functions.

        • By ninkendo 2025-06-0422:581 reply

          After coding in swift for ~5 years at job - 1, I can count on one hand the times I had to deal with a reference cycle, and in each instance it was obvious in context that there was going to be a cycle so I used “weak” in anticipation. Zero times did I ever accidentally forget to use a weak reference.

          A simple rule of thumb is that if anything has a parent/child relationship, the child should use the weak keyword (or even “unowned” if you’re certain about object lifetimes) when referring back to the parent. That and things like hand-rolled doubly linked lists, but the standard library already has that so who cares.

          • By einsteinx2 2025-06-0612:50

            Also for all the hate Xcode deservedly receives, it comes with some really great tooling in the Instruments package that, among other things, makes it trivial to detect leaked memory when it does happen. And from my own experience developing in Obj-C and Swift for 15 years, I agree that it’s really not the big issue that anti-reference counting people make it out to be.

        • By miffy900 2025-06-0423:13

          Well kinda; even in a tracing GC language like C# you have things like WeakEventManager (https://learn.microsoft.com/en-us/dotnet/api/system.windows....) to prevent memory leaks when using callbacks as event handlers. It is definitely not exclusive to ref counted languages.

          In C#, these aren't the exact same as a reference cycle, but the end result is the same, a memory leak: https://learn.microsoft.com/en-us/dotnet/desktop/wpf/events/...

        • By tbojanin 2025-06-0421:262 reply

          The tooling around finding these references cycles (Instruments) is 2nd to none imo.

          • By steeleduncan 2025-06-0421:341 reply

            True, but it only works on Apple systems, which makes Swift far less appealing on non-Apple systems. This adds weight to the point the GP comment makes about Swift being held back by its association with Apple

            • By dardeaup 2025-06-0422:571 reply

              Agreed. However, if Jetbrains were to provide a Swift IDE that's free for non-commercial use...

              • By ohdeargodno 2025-06-057:461 reply

                They used to. AppCode was excellent. Fleet kind of supports Swift well enough.

                AppCode was abandoned because Apple is impossible to work with and never provided up to date semantics and language definitions for Swift, keeping everything under wraps and making every single Swift release a race to suddenly implement whatever new keyword they made up this week.

                Fleet is more of a VSCode. Probably using the LSP these days, and it's good enough if a simple text editor is what you need.

                • By einsteinx2 2025-06-0612:54

                  Swift is literally developed in the open, so I don’t think your argument makes sense.

                  I think the reason they abandoned it was trouble keeping up with new iOS SDK features getting shadow dropped as part of new Xcode betas and iOS devs wanting to immediately prepare their apps to use those features, not anything to do with Swift language releases. Also things like having to recreate interface builder, then support auto layout in it, and then later SwiftUI previews, etc. Again all iOS platform stuff, not Swift language stuff.

          • By Onavo 2025-06-0421:32

            The issues it has around circular data structures is almost, though not quite, as bad as rust.

      • By pebal 2025-06-0512:251 reply

        But that's why Swift generates slower code. Memory is cheap, also for Apple, although Apple would like to hide that fact.

        • By sedatk 2025-06-0518:542 reply

          Have you seen the benchmarks? Swift code is 40% faster than Java in that instance.

          • By vips7L 2025-06-0615:071 reply

            I don’t think anyone actually believes that the language change is what made the difference in that post. As far as anyone can tell there were 2 things that made their rewrite better:

            1. They had experience on the type of app and you tend to do things better when you do it the second time.

            2. Reading between the lines they were likely running an ancient version of Java from 10+ years ago.

            • By sedatk 2025-06-0621:301 reply

              > I don’t think anyone actually believes that the language change is what made the difference in that post

              They already admit in the article that JVM setup costs were a huge overhead during scaling operations. JIT might also incur a similar overhead at the same stage. So, not the language per se, but the runtime difference must have made a difference.

              Compiled native code may not be too different between the two. But, in terms of memory management, Swift's ability to keep the heap in a smaller area might contribute to better cache utilization which might implicitly contribute to performance.

              In the end, as you said, writing better code the second time might have made the greatest contribution of course. That doesn't necessarily mean that language change has made no difference.

              • By vips7L 2025-06-072:25

                > They already admit in the article that JVM setup costs were a huge overhead during scaling operations. JIT might also incur a similar overhead at the same stage.

                Yeah the startup costs are an active problem. I do think though that if they weren’t running an old runtime they wouldn’t have had the same GC issues.

            • By tgffdd 2025-06-0615:14

              No wonder Swift performs unwell in this benchmark. The Swift implementation is written very poorly, done by developers obviously unexperienced in writing proper Swift :)

    • By dagmx 2025-06-050:101 reply

      Qt have announced they’re doing Swift bindings recently https://www.qt.io/blog/about-the-new-qt-bridging-technology

      Afaik someone on this site shared a repo url that has the early bindings using Swift C++ interop.

      • By cosmic_cheese 2025-06-050:19

        Looks like it’s only for Quick and not Widgets, which I’m sure is still useful but kind of a bummer.

    • By 90s_dev 2025-06-053:28

      When I write code, I always start with the platform, which drives and limits the language choices. I don't say I want to write in C++, I say I want to write for web, or for iOS, or Windows, or whatever. If I'm writing for web, I'll reach for TypeScript. If iOS, then ObjC. If Windows, maybe C# if I'm being threatened. Using Rust to build a web app is like pulling teeth.

      If many people think the same way, then yeah, there's no good reason to reach for Swift unless you're writing an iOS or Mac app and don't want it to be cross platform for some reason that I almost can't imagine in 2025.

    • By cosmic_cheese 2025-06-050:051 reply

      Very few languages have quality Qt bindings because Qt is a pain to bind to, so that might not be a particularly good benchmark.

      In addition to the Adwaita bindings listed, there’s also autogenerated plain GTK bindings (https://github.com/rhx/SwiftGtk).

      • By Narew 2025-06-0514:14

        I'll interpret a bit. But I think the remark is more did we have a cross platform and complete gui library for swift.

    • By teleforce 2025-06-051:20

      >Seems to hit a sweet spot of a fast/compiled (compared to Javascript), memory safe (compared to C++), object orientated (compared to Go) and easy to write (compared to Rust).

      What you've enumerated are also applicable to Dlang with potential of even faster compile and execution time than C++ or even the venerable Fortran [1].

      [1] Numeric age for D: Mir GLAS is faster than OpenBLAS and Eigen:

      http://blog.mir.dlang.io/glas/benchmark/openblas/2016/09/23/...

    • By no_time 2025-06-058:16

      >Swift seems like a really nice language that's held back by it's association with Apple.

      >Seems to hit a sweet spot of a fast/compiled (compared to Javascript), memory safe (compared to C++), object orientated (compared to Go) and easy to write (compared to Rust).

      Replace Apple with MS and Swift with C# and all of this is still true but makes my heart ache even more.

    • By dzonga 2025-06-0515:45

      or embracing complexity as C++. It used to be very simple and pragmatic language. that stopped with Swift 3. Remember Protocol based Swift - better than OOP - but now it seems a bastard child of C++.

      Swift at one point could've been Golang with better C++ interop. A better Rust since it's memory safe without the gymnastics.

    • By hocuspocus 2025-06-0421:483 reply

      I don't think anyone cares about Apple here. Swift solved a problem that people outside iOS/macOS didn't have. Then it took ~10 years to make Swift more seriously general purpose and multi-platform, it's simply too late to be compelling when other languages have progressed too.

      Re: easy to write, I'm not sure, Swift's recent explosion in complexity makes it a hard sell vs Rust, even if the learning curve might be slightly less steep. At the end of the day, Rust's DX wins in almost every dimension, people are willing to learn slightly more complex semantics if it saves times everywhere else: tooling, libraries, build tool and package manager, ... I believe even compilation speeds don't compare favorably.

      • By jbverschoor 2025-06-0421:582 reply

        Of the opposite.. there’s soo much hate against Apple and all their contributions. But somehow Google, Meta, annd Microsoft are better represented.

        Swift solves a problem that is still there. It was also released before the final release of Rust.

        It’s just that people seem to think that because it’s from Apple, it’s only meant for iOS/macOS.

        I love swift, it combines so many things, and Apple is really good get pushing the language forward with its compilers/warnings.

        I’m also using it for shell scripts and small utils, and it’s really great. I made https://github.com/jrz/container-shell to improve the experience of scripting cli tools in Swift.

        • By bigyabai 2025-06-051:042 reply

          They deserve it. Look, Microsoft and Meta and Google are all evil companies too, but all of them actually make good-faith contributions to Open Source projects. Meta maintains React.js and Zstd, Microsoft does tons of open work on Typescript, VS Code and the Linux Kernel. Google handles the AOSP, Blink Engine, Go, Angular, JAX, Grpc... the list goes on. They're brimming with genuine, self-evident goodwill, even when their businesses detract from humanity.

          So; what exactly are Apple's big, selfless contributions? XNU is Source Availible but unusable without buying proprietary Apple hardware. iBoot is mysterious and has to be reverse-engineered to use it like UEFI. Open standards like Vulkan are ignored for political reasons, CUPS is basically derelict, WebKit killed KHTML because sharing was too hard, and APFS and Metal are still both undocumented despite promised transparency. CoreML is proprietary but can't compete with CUDA, iPads can't use QEMU despite supporting it in-hardware, all the Apple Silicon DeviceTree code is private, competing runtimes like Corellium get sued and security researchers get ignored. Swift, as an offering to the Open Source community, is a punch line at the end of a 20 year long gag.

          Apple does genuinely nothing to advance the wellbeing of common computing for mankind. Apple leaves behind no charitable contributions to anything that does not ensure their absolute preservation as a business. Combined with the proven anticompetitive damages that the App Store incurs on the burgeoning mobile market, they are unequivocally a net-negative force and aren't hated enough for their parasitic influence on global software production.

          • By belmont_sup 2025-06-0513:50

            You make a convincing case.

          • By blackqueeriroh 2025-06-066:251 reply

            And yet, they make the best damn computers out there with hardware second to none, make the single best consumer-level AI computer, are better at product design than basically anyone in the world, and have defined at least four different product categories, while donating billions of dollars to truly charitable causes and being more clearly committed to sustainability than any of their other large tech giants.

            I think I can handle their stance on software,

            • By bigyabai 2025-06-0617:27

              Well, your first three claims are subjective and your second two claims are something both Meta, Microsoft and Google have all done themselves. I was focusing more on what made Apple unique, not why people want to exonerate them so desperately. Your could use the same defense to protect Facebook and nobody could objectively disprove you.

              Cause like... we could start judging companies based on how many carbon credits they buy. But that wouldn't make Microsoft or Apple or Google any less evil, so it's a non-sequitur. Apple can simultaneously mass-produce the most desirable hardware in the world while creating anticompetitive market conditions that debilitates fair choice and destroys legitimate value. The United States threatened to break up Microsoft for the same overreach.

        • By bobbylarrybobby 2025-06-0422:562 reply

          I'm fairness, when Swift was first released it was basically Apple devices only. It took forever for Foundation to get ported to other platforms (and good luck writing anything useful without Foundation).

          • By miffy900 2025-06-0423:17

            Yes this exactly. People are also conveniently ignoring or forgetting that Apple kept changing the ABI for Swift binaries - it wasn't until 'v5' did they lock it down. Objective-C is 30+ years old and only once had this issue with the ObjC 2.0 release. Really, Swift v5 was the real v1.0 release because it was at that version Swift was truly ready for primetime.

          • By Someone 2025-06-065:07

            When C#/.NET was first released it was basically Windows devices only, too. First release: 2000, cross-platform and opened up in 2014, if I’m reading Wikipedia correctly.

            When Android was first released it was basically Android devices only, too. Still is.

      • By Scramblejams 2025-06-050:57

        Lots of folks are looking for a sweet spot that combines most of Rust's upsides with a less restrictive model. I'm working on a game in Swift (using Godot bindings) for that reason.

      • By mort96 2025-06-0421:562 reply

        Meh, I could've been curious about playing with Swift if it wasn't so Apple-centric. Just like I could've been curious about playing with C# if it wasn't so Microsoft-centric.

        • By wsc981 2025-06-051:403 reply

          I don't feel C# is that Microsoft-centric anymore - not after the release of Roslyn.

          It works well on Windows, macOS, iOS, Android and I suspect Linux as well (but I never use Linux, hence I can't be sure). And if you want a multiplatform UI there's some decent options like Avalonia UI [0].

          ---

          [0]: https://avaloniaui.net/

          • By yndoendo 2025-06-0516:38

            When Microsoft ported C# to Linux, they actually held off on releasing it because Linux ran C# applications better than Windows OS. They took time to refactor the code so Windows OS and Linux where on par. I cannot remember the source video where Microsoft employees talking about it is. The video was right after the .NET Core initial release.

            That being said. Microsoft does not want a cross-platform C# that works on Linux. This is why their .NET MAUI does not support Linux and a 3rd party framework will be needed.

            Only reason I would choose C# for non-Windows is because of existing / legacy code base. Any new application would use language and libraries that fit the problem versus trying to fit C# as the solution to all.

            Mono actually is the primary project that greatly improved the C# world and evolved the latest .NET infrastructure, not Microsoft. Mono developers actually cleaner APIs. Even Microsoft Visual Studio for Mac is just Mono Developer with the Linux supporting bits removed.

          • By troad 2025-06-055:47

            I think the evolution of C# beyond Microsoft is overplayed. The entire tooling around the language remains a Microsoft product, with all the attendant Microsoft nonsense. It has opt out telemetry, even on Linux, and like every other MS product is currently having AI force-fed down its throat. It's only a matter of time until a compiler update automatically uploads all your code to Microsoft Azure Recall .net Passport Hotmail ft. the Copilot dancers.

            If you're developing Windows apps or Windows games, C# is a fine choice; much as Swift is a fine choice for Apple apps. But no one worried about Apple's control of Swift should be pointing people to C# with a straight face.

          • By pjmlp 2025-06-0513:44

            Microsft management cleary doesn't want VSCode to have feature parity with VS, and C# DevKit is also under the same license as VS Professional.

            This routinely pulls the carpet under the .NET team effort to widespread .NET adoption.

        • By mproud 2025-06-0422:082 reply

          Is it that Apple made it and puts resources into it that makes it Apple-centric? If so, is that truly important?

          • By xeonmc 2025-06-0422:191 reply

            I wonder why LLVM isn’t also considered Apple-centric by the same thought process.

            • By miffy900 2025-06-050:33

              To be fair, LLVM wasn't an Apple-initiated project, but one Apple noticed and decided to adopt later on (they hired Chris Latner in 2005; LLVM began in 2000, and had its first public stable release in 2003).

              Unlike Swift, there was never a period of time where LLVM only worked exclusively on Apples own OS's or hardware. From the get go, you could run early versions of LLVM on Windows. In Swift's case, Linux support came in 2016, 1.5 years after Swift's initial release in 2014, then Windows support came 6 years later in v5 (2020).

              If Apple didn't want to let Swift suffer the reputation of being an Apple-only language they should've invested more into cross platform support much earlier on. Yes, today Apple and everyone else can say, 'Swift is cross-platform', but dig deeper into the history of Swift and its clear that from the get go, Apple treated non-Apple OS support as an afterthought.

          • By mort96 2025-06-058:01

            It's not that Apple puts resources into it. It's that, yes, Apple made it, and its only raison d'etre is to replace Objective-C for Apple platforms.

  • By Kon-Peki 2025-06-0421:52

    Well since this is about the web site redesign, I’ll leave my opinions on the language to myself and just say that I like the color gradients and how the trail of color coming off of the mascot bird acts as a separator as you scroll down the page.

    It’s a fresh change from your typical modern website.

  • By fidotron 2025-06-0422:015 reply

    The inclusion of "Embedded" on the front page when all the documents say it's experimental and not supported in public releases "yet" does make me curious if they will announce more at WWDC.

    The big hopes for me this year of WWDC would be a Swift port of the Foundation DB record layer, from Java, along with a decent http server package. It's underappreciated just how useful it is in golang having a production capable http server in the standard library.

    • By tiffanyh 2025-06-050:311 reply

      > Apple's Secure Enclave processors run software written in Embedded Swift, as was announced at WWDC last year. Apple shipped 225 million iPhones (just iPhones) in 2024, so that's a very large deployment by any industry's standards.

      https://forums.swift.org/t/redesigned-swift-org-is-now-live/...

      • By ohdeargodno 2025-06-057:50

        Released on a single architecture, hand in hand with the builders of them architectures that happen to also be the builders of Swift.

        Working on a dozen architectures with only 10 000 units sold each would be a better proof of it being a valid option for embedded development, but I guess the industry standards are whatever we make up today.

    • By cosmic_cheese 2025-06-050:13

      I know a lot of people don’t like extensive stdlibs, but I’m not among them. As long as the stuff in the standard library is actually decent, I’m all for including more.

      The fewer dependencies I need, the better. It’s one of the reasons why I’m still a big fan of developing for Apple platforms despite the recent drama: it’s a very batteries-included experience, which means it’s not just feasible but pleasant to develop top-class apps with a dependency list that can be counted on one hand. That’s amazing for not just the dev process itself but also for long term maintenance.

    • By vaxman 2025-06-0522:27

      They need sideline embedded until they release a proto board and a compute module with Apple Silicon SoCs running Linux or Darwin. If Apple drops support for the embedded variant of Swift then it would be up to enthusiasts to carry on and I don't see that happening. This is also why the other OEMs like Nordic and STMicro are more likely to support Micro/CircuitPython than Swift.

    • By jiehong 2025-06-0519:59

      I find the golang http server very basic, though. Like no content negotiation based on http headers by default, or any CORS by default. Also maybe writing headed after body does nothing since writing the body sends the response and it’s too late by then.

      It does work, but I don’t find it ready for production without a lot of conf and extensions first.

    • By sparky4pro 2025-06-0520:56

      I would like to work with a Swift version with reduced functionality (IMHO over time Swift became the same monstrosity as C++) but the embedded version cannot be used with “normal” operating systems only embedded ones. Why this artificial boundary? Apple…

HackerNews