A deep dive on ABI design tradeoffs, and how Swift approached the problems in this space;
https://gankra.github.io/blah/swift-abi/
(Compared with C++/Rust, it avoids monomorphisation and does more boxing, with attention to details that affect performance)
miniblog.
Related Posts
I've released difftastic 0.68! A smaller update, but still worth upgrading:
* Improved Bash, C, Go, Lua, Nix, Perl, Python, Rust, Scala, Swift and YAML parsing.
* Minor display and git compatibility fixes.
Just released a new version of difftastic!
* Verilog support
* Improved Erlang, F#, Gleam, Pascal and Swift
* Better detection of binary files
I'm a huge fan of Swift's 'Error Handling Rationale' design document: https://github.com/swiftlang/swift/blob/9315673c003875158852579bd1f33480cdec5461/docs/ErrorHandlingRationale.md#fundamentals
It carefully defines terminology and compares with other languages, so you can understand Swift's position and preference in the design space.


