Jason Turner & Michal Vaner


Details
โช๏ธ๐ ๐ถ๐ฐ๐ต๐ฎ๐น ๐ฉ๐ฎ๐ป๐ฒ๐ฟ Rust 101 for C++ developers
In recent years, a new language called Rust appeared. Unlike many other that claim to be systems languages, it delivers on that promise and allows solving problems where previously C and C++ were the only options. Furthermore C++ was one of the main influences of Rust. One could therefore say Rust is C++'s younger sibling. And we should know our close family members no matter if we like them or not.
Let's have a look what parts of the language are just plain copied, which are very similar but also where the main differences lie. This is not an attempt to teach Rust during the talk, as Rust is (similarly to C++) quite large and complex language. We'll instead highlight some interesting aspects, philosophical decisions and solutions instead and leave the boring part like exact syntax constructs as a homework for the curious listener.
โช๏ธ๐๐ฎ๐๐ผ๐ป ๐ง๐๐ฟ๐ป๐ฒ๐ฟ Great C++ is_trivial
There are many ways to initialize an object in C++, and much time spent analyzing the efficiency of the many options. We then think and rethink and overthink how to avoid copies and if a `std::move` would be more efficient in a certain case.
But if we understand what it means for a type to be trivial most of these questions now become meaningless. We can get all of the efficiency we could hope for, and probably more.
We will look at the trivial type traits, what they mean, and how they affect our code. Will will then examine the benefits of using trivial types and the impact on performance.
โช๏ธDiscussion & Networking in pub "Na Jezerce"
Na Jezerce 1451
Praha 4-Nusle

Jason Turner & Michal Vaner