4 ms·
Interesting observation. I looked into it a bit. Could theoretically be for Rust, but it sounds like Rust doesn't have the aliasing optimizations working yet.
by genrez 5y ago
Interesting observation. I looked into it a bit.
Could theoretically be for Rust, but it sounds like Rust doesn't have the aliasing optimizations working yet. Based off [1], it looks like Swift's ABI might be able to take advantage of these things. (I don't know much about Swift)
Based off [2], it looks like Zig definitely can do these sorts of optimizations. Ada also has aliasing constraints, (you need to specify to the compiler that you want a thing to be aliasable) but I don't know if any compilers use them for optimizations. I know that Fortran can do these sorts of optimizations. Both Ada nor Fortran seem to be undergoing a PR renaissance, so they might be "trendy new languages" for that purpose.
However, given that the other two articles on the author's website [3] are about Delphi and complaining about AT&T assembly syntax, I'd suspect that the author is just a system's programmer annoyed about ABIs.
[1] https://gankra.github.io/blah/swift-abi/#ownership https://gankra.github.io/blah/swift-abi/#ownership
[2] https://ziglang.org/documentation/0.2.0/#Type-Based-Alias-Analysis https://ziglang.org/documentation/0.2.0/#Type-Based-Alias-An...
[3] https://elronnd.net/writ/ https://elronnd.net/writ/
- AndyKelley 5y agocorrection: https://ziglang.org/download/0.4.0/release-notes.html#Type-Based-Alias-Analysis-Status https://ziglang.org/download/0.4.0/release-notes.html#Type-B...