HackerReposA FIELD GUIDE TO OPEN SOURCE
ProSponsor the shelf♧ 0
← Back to top all-time
swiftlang
swift
Swift2015–2026
swiftlang / swift

swift

The Swift Programming Language

203Distinct people
269Mentions
3Explicit recommenders
70.6KGitHub stars
REPOSITORY AT A GLANCE

What to know before exploring

What it is

The Swift Programming Language

GitHub

Where it is used

No documented product use was verified in the last source check.

What people are saying

As an iOS engineer, I'm a bit biased, but I'd still say it's currently not practical to learn it if you're not doing Apple development. That said, I love the language, and it's…

austinl used a recommendation phrase. 3 indexed comments match. This is a phrase match, not a verdict.

No classified warning is attached to this page. Read the discussions before treating silence as approval.

Also in these discussions

Mentioned in the same Hacker News threads. That is not proof they are substitutes.

This week on Hacker News

Nov 8–Nov 15 UTC · Direct repository links and separately labeled related project stories. Indexed through 11/15/2026, 6:59:22 PM UTC.

No direct repository links were found in the indexed HN discussions over the past seven days. Older discussions are available below.

Mentions over time

HN mentions by year269 dated mentions

Observed mentions: 2015-12-03 15:21:41 UTC to 2026-03-26 19:15:06 UTC.

0102030402015-01-01 00:00:00 UTC to 2016-01-01 00:00:00 UTC (exclusive): 35 mentions; 11 submissions, 24 comments20152016-01-01 00:00:00 UTC to 2017-01-01 00:00:00 UTC (exclusive): 41 mentions; 10 submissions, 31 comments2017-01-01 00:00:00 UTC to 2018-01-01 00:00:00 UTC (exclusive): 40 mentions; 7 submissions, 33 comments2018-01-01 00:00:00 UTC to 2019-01-01 00:00:00 UTC (exclusive): 12 mentions; 2 submissions, 10 comments2019-01-01 00:00:00 UTC to 2020-01-01 00:00:00 UTC (exclusive): 25 mentions; 8 submissions, 17 comments2020-01-01 00:00:00 UTC to 2021-01-01 00:00:00 UTC (exclusive): 27 mentions; 6 submissions, 21 comments20202021-01-01 00:00:00 UTC to 2022-01-01 00:00:00 UTC (exclusive): 21 mentions; 8 submissions, 13 comments2022-01-01 00:00:00 UTC to 2023-01-01 00:00:00 UTC (exclusive): 23 mentions; 3 submissions, 20 comments2023-01-01 00:00:00 UTC to 2024-01-01 00:00:00 UTC (exclusive): 19 mentions; 1 submissions, 18 comments2024-01-01 00:00:00 UTC to 2025-01-01 00:00:00 UTC (exclusive): 11 mentions; 1 submissions, 10 comments2025-01-01 00:00:00 UTC to 2026-01-01 00:00:00 UTC (exclusive): 12 mentions; 1 submissions, 11 comments2026-01-01 00:00:00 UTC to 2027-01-01 00:00:00 UTC (exclusive): 3 mentions; 0 submissions, 3 comments. Incomplete calendar period.2026*

* An incomplete calendar period is marked with an outlined bar. Its count is not directly comparable with a full period.

Counts come from the repository’s dated source evidence. Index cutoff: 2026-11-02 08:16:59 UTC.

View mention counts and date ranges
UTC ranges include their start and exclude their end. Select a period to filter the source evidence.
PeriodStart (UTC)End (exclusive, UTC)MentionsSubmissionsComments
20152015-01-01 00:00:00 UTC2016-01-01 00:00:00 UTC351124
20162016-01-01 00:00:00 UTC2017-01-01 00:00:00 UTC411031
20172017-01-01 00:00:00 UTC2018-01-01 00:00:00 UTC40733
20182018-01-01 00:00:00 UTC2019-01-01 00:00:00 UTC12210
20192019-01-01 00:00:00 UTC2020-01-01 00:00:00 UTC25817
20202020-01-01 00:00:00 UTC2021-01-01 00:00:00 UTC27621
20212021-01-01 00:00:00 UTC2022-01-01 00:00:00 UTC21813
20222022-01-01 00:00:00 UTC2023-01-01 00:00:00 UTC23320
20232023-01-01 00:00:00 UTC2024-01-01 00:00:00 UTC19118
20242024-01-01 00:00:00 UTC2025-01-01 00:00:00 UTC11110
20252025-01-01 00:00:00 UTC2026-01-01 00:00:00 UTC12111
2026 (partial)2026-01-01 00:00:00 UTC2027-01-01 00:00:00 UTC303

What Hacker News says

23 sources
According to https://github.com/apple/swift/blob/6d2a3bbf9d518c2ff8c63731... > The Swift language contains a number of features not part of the Hindley-Milner type system, including constrained polymorphic types and function overloading, which complicate the presentation and implementation somewhat. On the other hand, Swift limits the scope of type inference to a single expression or statement, for purely practical reasons: we expect that we can provide better performance and vastly better diagnostics when the problem is limited in scope. However Hindley-Milner systems are generally linear in complexity whereas Swift's type system experiences combinatorial complexity explosions in the presence of overloads and operators and literals.
In SwiftUI Is Convenient, but Slow
> Rust and Swift are not really competing in the same space. Rust is trying competing yes, Swift is not trying to compete, they use it, they do what they have to do [1] What happened to Mozilla's Rust plan with Firefox? so far, no bueno > And nobody trusts Apple for cross-platform support. Swift supports a wide range of targets and architectures [2] They officially provide release build for all major OSs [3] [1] - https://github.com/apple/swift/blob/main/docs/OwnershipManif... [2] - https://github.com/apple/swift/blob/aff7c14d92fd241aff85ba4c... [3] - https://www.swift.org/download/
In Tell HN: Rust Is Complex
Nether llvm nor clang are GPL, dual licensed or otherwise. They're Apache 2.0[1] (or formerly a quasi-MIT/X11 license[2]), as is swift[3]. The binaries of the compilers they release with the platform are also built with internal forks that have some differences with the public llvm/clang/swift trees and that wouldn't be possible with gpl. [1] https://github.com/llvm/llvm-project/blob/main/llvm/LICENSE.... [2] https://github.com/llvm/llvm-project/blob/7555c589af006c9c4d... [3] https://github.com/apple/swift/blob/main/LICENSE.txt
In Linux M1 GPU driver passes 99% of the dEQP-GLES2 compliance tests
Like that says anything about anything? github.com/apple/swift has ~4000 open issues labeled as "bug" and has existed since 8 years ago. That makes about ~500 "bugs" per year while emacs by the same measure then have about ~75 bugs per year. Tell me again how awful that metric is compared to others?
In My goal of closing 10% of Emacs bugs (2020)
Yes, I know C# reasonably well. I use it in Unity for game development, where it is the only option. C# is better than many alternatives, but Swift is simply a better language in every regard. C#'s GC is a constant issue for games, and it makes using things like LINQ nearly impossible since it does so much allocation. Swift is designed around automatic reference counting instead. C#'s structs work weirdly and are hard to use. Swift is so much more ergonomic. C# has added a few nice things lately, but it's much more verbose than Swift. Swift is also more focused on performance, and is always AOT compiled. Unity has had to come up with some insane things to get C# to work across platforms – they have their own .NET IL to C++ compiler (https://docs.unity3d.com/Manual/IL2CPP.html) that doesn't always work right. They also have a SECOND custom
Read the rest
C# compiler for high-performance programming (https://docs.unity3d.com/Packages/com.unity.burst@0.2/manual...). I'm also very excited about Swift 6's upcoming opt-in Rust-like lower-level memory management which should help a ton for performance-critical code. (https://github.com/apple/swift/blob/main/docs/OwnershipManif...)
In It’s time to make that indie C# game in Godot
Most of the performance critical sections are numeric computation loops. I use the Unsafe APIs where profiling shows that the bounds-checking overhead is significant. In principle, I could get rid of reference counting overhead by using value types or immutable data. I couldn't see a simple path to doing that without re-architecting everything (with no guarantee that the end result would not just have different performance issues.) For the moment, I'm awaiting compiler improvements before re-evaluating the tradeoffs. There is certainly room for the compiler to reason better on eliding retain/release. https://github.com/apple/swift/issues/58549 Yes, the code does use Accelerate where applicable. That is one component of the numeric evaluation. It addresses the lowest level of things like evaluate the sin function on every array element, or
Read the rest
multiply there arrays element wise. Performance tuning is a game of whack-a-mole. There's always another bottleneck somewhere.
In Porting Graphing Calculator from C++ to Swift
The obtuse part about github's linear view isn't that it's linear, it's that it's interleaved by time in ways that form a chaotic view even for a linear one. Like, picking a random large project for an example, take a look at swift's history on github[1]. Because there's a bunch of PRs that were being operated on in parallel, and some probably that are even kind of old, the view you wind up with is likely a large streak of "PR merged" commits and then all the commits from those PRs jumbled together in an incoherent mess. Likely you'd have to scroll a few pages to even find some of those PR's commits (Note: git-log also has this as its default order, but you have some choices like --topo-order). That said, I really really recommend you look at git's native --first-parent output, as I mentioned. That is likely the linear history you really
Read the rest
want and it's right there in the client. It's the exact same thing as you get from a squashing strategy, except the history isn't gone it's just hidden. I agree that the interactive tree views are chaotic and incoherent in their own ways. I don't use them either. I use --first-parent usually to find what I want and then I might dig in deeper if I need to. But leaving that history there underneath means tools like git bisect can actually work, or if you need to narrow down onto a small change you actually can. [1] https://github.com/apple/swift/commits/main
In How to write a Git commit message (2014)
> It's hard not to secretly suspect that some of these things arise that way-- satire that is so spot on that it gets adopted as the truth. There have been many PR/issues on github that were either very likely, or certainly submitted by trolls, that have been accepted. [1] Although nowadays it's common to see master/slave being replaced, back in 2015 it was not common, this one one of the first things that dropped that terminology. The fact that the user is called pcbro and has a picture of PC Principal from South Park, makes it somewhat likely that it was a troll. [2] I think based on the language used is almost 100% certainly a troll [1] https://github.com/apple/swift/pull/165 [2] https://github.com/microsoft/vscode/issues/87268
In Google’s AI-powered ‘inclusive warnings’ feature is very broken

Showing the 15 most recent of 23 sources. Enable JavaScript to search and browse every indexed mention.

MAKE YOURSELF AT HOME

A few shortcuts

/
Search the collection
?
Open this guide
Esc
Close dialogs and navigation

Your saved repositories and interests stay in this browser.