

As long as two binaries are compiled with the same version of the Rust compiler, they are ABI compatible. Even if the compiler version differs, I’ve found that changes to the ABI are fairly uncommon. Furthermore, anything exposed through the C ABI is stable, so the problem can be circumvented if needed. It’s not the most ergonomic solution, admittedly, but with some compromises dynamic linking is perfectly feasible.

No but I can close the air duct just above my soft palate (not really sure what that part is called), so effectively I can’t breathe through my nose but if I were to go underwater water would still get in, if that makes any sense. I’m not sure if this is common. I know that that part is supposed to close automatically while swallowing to prevent food from going up in the nasal cavity, but idk how common it is to be able to control it separately. It’s handy to avoid smells without using my hands though :)