The Dark Arts of Advanced and Unsafe Rust Programming
I recently had to write a lot of unsafe code in C# to interoperate with a driver.<p>As advanced as modern languages are, the excellent memory models only work within the language. Interoperability requires that you can work with memory directly when needed. (And only when needed.) I don't have a lot of Rust experience, but C# has plenty of tricks to avoid unsafe code but get close enough to working with real memory.<p>One thing that would help is if there was some kind of a tool that could take C header files, figure out how the structs and functions compile, and generate the Rust / C# structs and fuction signatures. This is such a time consuming task to do manually in C#, and novices screw it up all the time.<p>(I wish I had the time to do more work in Rust. It's a great concept!)