<story><title>Rust 1.45</title><url>https://blog.rust-lang.org/2020/07/16/Rust-1.45.0.html</url></story><parent_chain><item><author>fullstop</author><text>I keep seeing more and more news about Rust, and figure that perhaps it is time that I learn something new.&lt;p&gt;99% of my development work these days is C with the target being Linux&amp;#x2F;ARM with a small-ish memory model.  Think 64 or 128MB of DDR.  Does this fit within Rust&amp;#x27;s world?&lt;p&gt;I&amp;#x27;ve noticed that stripped binary sizes for a simple &amp;quot;Hello, World!&amp;quot; example are significantly larger with Rust.  Is this just the way things are and the &amp;quot;cost of protection&amp;quot;?  For reference, using rustc version 1.41.0, the stripped binary was 199KiB and the same thing in C (gcc 9.3) was 15KiB.</text></item></parent_chain><comment><author>steveklabnik</author><text>The smallest Rust binary ever produced was 145 bytes. &lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;tormol&amp;#x2F;tiny-rust-executable&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;github.com&amp;#x2F;tormol&amp;#x2F;tiny-rust-executable&lt;/a&gt;&lt;p&gt;That is a bit extreme but it demonstrates the lower bound.&lt;p&gt;There&amp;#x27;s a lot of things you can do to drop sizes, depending on the specifics of what you&amp;#x27;re doing and the tradeoffs you want to make.&lt;p&gt;Architecture support is where stuff gets tougher than size, to be honest. ARM stuff is well supported though, and is only going to get better in the future. The sort of default &amp;quot;get started&amp;quot; board is the STM32F4 discovery, which has 1 meg of flash and 192k of RAM. Seems like you&amp;#x27;re well above that.</text></comment>
<story><title>Rust 1.45</title><url>https://blog.rust-lang.org/2020/07/16/Rust-1.45.0.html</url></story><parent_chain><item><author>fullstop</author><text>I keep seeing more and more news about Rust, and figure that perhaps it is time that I learn something new.&lt;p&gt;99% of my development work these days is C with the target being Linux&amp;#x2F;ARM with a small-ish memory model.  Think 64 or 128MB of DDR.  Does this fit within Rust&amp;#x27;s world?&lt;p&gt;I&amp;#x27;ve noticed that stripped binary sizes for a simple &amp;quot;Hello, World!&amp;quot; example are significantly larger with Rust.  Is this just the way things are and the &amp;quot;cost of protection&amp;quot;?  For reference, using rustc version 1.41.0, the stripped binary was 199KiB and the same thing in C (gcc 9.3) was 15KiB.</text></item></parent_chain><comment><author>bestouff</author><text>Yes there&amp;#x27;s a fixed cost because of the std library, panics unwinding code (i.e. clean recovery instead of aborting when something goes wrong), and the tendency to statically compile everything in adds some more, but in embedded context (a.k.a. &amp;quot;no_std&amp;quot;) you can observe C and Rust code are very comparable.&lt;p&gt;Especially in your case you&amp;#x27;ll find Rust to be a joy to use: you&amp;#x27;ll have way more confidence in your code being able to run for months without segfaults or memory leaks. And if you have a good understanding of the C memory model using Rust will be a breeze.</text></comment>