<story><title>Announcing Rust 1.23</title><url>https://blog.rust-lang.org/2018/01/04/Rust-1.23.html</url></story><parent_chain><item><author>provost</author><text>I haven&amp;#x27;t started playing around with Rust yet, but I&amp;#x27;m interested in it.&lt;p&gt;If you&amp;#x27;re using Rust -- tell me, what are you building in it? And what do you love about Rust in your experience while building it? (Get me excited)</text></item></parent_chain><comment><author>pedrocr</author><text>My project to learn rust was a camera RAW format loader[1]. Compared to the good modern C++ codebase it&amp;#x27;s based on the end result supports the same formats, has the same performance, is only 20% of the lines of code, and is much safer to use (binary formats are rife for exploits). Doing all that took me less time than I had already spent previously fuzzing the C++ codebase and doing whack-a-mole on extremely scary exploitable bugs. For that use case it was &lt;i&gt;extremely&lt;/i&gt; successful.&lt;p&gt;The next step is to build an image pipeline and editor around it[2][3]. For that the graphics ecosystem isn&amp;#x27;t as mature as the equivalent C&amp;#x2F;C++ ones but the possibilities are also amazing. The expressiveness of the language combined with the great LLVM backend means some things like very clean ways to do SIMD&amp;#x2F;threading become just a joy to use&lt;p&gt;If only I had the chance to work on this full time for a year... Help would be very much appreciated!&lt;p&gt;The kinds of things that become possible and even pleasent once you remove the mental overhead of dealing with the fundamental warts of C&amp;#x2F;C++ are amazing. After this experience with rust I don&amp;#x27;t see any reason to ever write C&amp;#x2F;C++ again.&lt;p&gt;[1] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;pedrocr&amp;#x2F;rawloader&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;pedrocr&amp;#x2F;rawloader&lt;/a&gt;&lt;p&gt;[2] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;pedrocr&amp;#x2F;rawloader&amp;#x2F;tree&amp;#x2F;master&amp;#x2F;src&amp;#x2F;imageops&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;pedrocr&amp;#x2F;rawloader&amp;#x2F;tree&amp;#x2F;master&amp;#x2F;src&amp;#x2F;imageop...&lt;/a&gt; (to be spun out into its own crate)&lt;p&gt;[3] &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;pedrocr&amp;#x2F;chimper&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;pedrocr&amp;#x2F;chimper&lt;/a&gt;</text></comment>
<story><title>Announcing Rust 1.23</title><url>https://blog.rust-lang.org/2018/01/04/Rust-1.23.html</url></story><parent_chain><item><author>provost</author><text>I haven&amp;#x27;t started playing around with Rust yet, but I&amp;#x27;m interested in it.&lt;p&gt;If you&amp;#x27;re using Rust -- tell me, what are you building in it? And what do you love about Rust in your experience while building it? (Get me excited)</text></item></parent_chain><comment><author>arianvanp</author><text>I&amp;#x27;m building a realtime path tracer using &lt;a href=&quot;http:&amp;#x2F;&amp;#x2F;vulkano.rs&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;http:&amp;#x2F;&amp;#x2F;vulkano.rs&amp;#x2F;&lt;/a&gt;&lt;p&gt;It&amp;#x27;s the best Vulkan library I&amp;#x27;ve seen so far (Though the C++ one is pretty good as well).   It will preprocess your shaders and generate rust structs that are guarenteed to be the same alignment as the structs in your shaders, which is very nice. They also use a future-based API (a la tokio) such that I don&amp;#x27;t have to deal with fences and semaphores and whatnot myself.  The future simply resolves as soon as the GPU is done doing work. It&amp;#x27;s an amazing abstraction, and really makes you think of your GPU as an asynchronous machine, instead of the openGL hacks that try to hide that from you.</text></comment>