I can't stop wondering if, to truly meet my goals for the #AccessKit project (https://github.com/AccessKit/accesskit), it will be necessary to rewrite it as a C library. Not a Rust library with a C API, but actually in C. I've had doubts before; you'd think the question would be settled by now. But two things prompted me to think about this again. 1/?
GitHub - AccessKit/accesskit: UI accessibility infrastructure across platforms and programming languages
UI accessibility infrastructure across platforms and programming languages - GitHub - AccessKit/accesskit: UI accessibility infrastructure across platforms and programming languagesGitHub
Matt Campbell
in reply to Matt Campbell • • •Matt Campbell
in reply to Matt Campbell • • •Matt Campbell
in reply to Matt Campbell • • •Leonard de Ruijter
in reply to Matt Campbell • • •Matt Campbell
in reply to Leonard de Ruijter • • •Leonard de Ruijter
in reply to Matt Campbell • • •Matt Campbell
in reply to Leonard de Ruijter • • •Leonard de Ruijter
in reply to Leonard de Ruijter • • •Jason J.G. White
in reply to Matt Campbell • • •Nelson Chu Pavlosky
in reply to Matt Campbell • • •One area where Rust may have an advantage is in selling to governments, if they mandate or seem likely to mandate memory safe languages: https://steveklabnik.com/writing/memory-safety-is-a-red-herring
If you want to improve the accessibility of government software (which ought to be accessible by law, but will it be?), it may be the case that writing in Rust is the best future-proofing strategy.
Memory Safety is a Red Herring
steveklabnik.comDrew DeVault
in reply to Matt Campbell • • •I don't think that my shitpost ought to be the sole inspiration for your desire to rewrite-it-not-in-rust
Micro-optimizing which languages we choose for software projects on the basis of climate change is not productive, unless the language you choose is some Ethereum shit or whatever. There are better ways to address environmental goals.
Matt Campbell reshared this.
Drew DeVault
in reply to Drew DeVault • • •Matt Campbell
in reply to Drew DeVault • • •Drew DeVault
in reply to Drew DeVault • • •Matt Campbell
in reply to Drew DeVault • • •Drew 🐘
in reply to Matt Campbell • • •You can produce C ABI dynamic libraries with rust. It takes additional work and there are quirks but the rust toolchain shouldn't haven't to be a direct dependency of AccessKit projects.
On the fundamental trade-off, you might want to consider some projections for (a) the full set of tools required to support the development effort and (b) how often they would need to run. Valgrind, ASAN, fuzzers, et al consume energy as well and they will be run much more often for a C project.
Vitalii Skikun
in reply to Matt Campbell • • •janet
in reply to Matt Campbell • • •