<story><title>Rewrite it in Rust</title><url>https://github.com/fish-shell/fish-shell/pull/9512</url></story><parent_chain><item><author>xedrac</author><text>Aside from tooling (which is &lt;i&gt;much&lt;/i&gt; better in Rust), C++ just isn&amp;#x27;t a very expressive language and has a high impedance with cognition.  I&amp;#x27;ve worked in C++ for well over a decade, and now that I&amp;#x27;ve used Rust for a couple years, I just don&amp;#x27;t ever want to go back.  It solves too many pain points of C++ to ignore.</text></item><item><author>Night_Thastus</author><text>As someone who works in C++, the build systems are definitely the worst part. QMake is abandoned. Cmake is the de-facto option and is an ancient horrible mess that feels like a miracle if it works at all. What&amp;#x27;s left?&lt;p&gt;Options that are barely supported, severely limited in features, are only reasonable for tiny side projects, etc.</text></item><item><author>rtpg</author><text>I think that C++&amp;#x27;s build system difficulties are _huge contributors_ to people not feeling like C++ is &amp;quot;worth learning&amp;quot;.&lt;p&gt;People do the C&amp;#x2F;Rust comparison, but at least C has a simpler mental model so is a different thing. I feel like C++ has similar, if not more, complexity to Rust and is harder to onboard.&lt;p&gt;I do think there are domains where &amp;quot;let&amp;#x27;s use Rust&amp;quot; are a bit ... aspirational more than anything (anything related to graphics or OS integration...). And there C++ makes a lot of sense. But I think that day by day the number of projects where C++ is the only obvious choice goes down. Hell, it&amp;#x27;s been going down since Java!</text></item><item><author>tayo42</author><text>&amp;gt; C++ is becoming a legacy language and finding contributors in the future will become difficult,&lt;p&gt;This is wild to see written down. Am I alone in feeling like there is a huge disconnect between what people online say and what happens I guess in the real world?&lt;p&gt;Developers I actually talk to never seem to have these kinds of opinions about c++ and alot more reserved about using rust</text></item></parent_chain><comment><author>jandrewrogers</author><text>&amp;gt; C++ just isn&amp;#x27;t a very expressive language&lt;p&gt;Compared to what? Modern C++ is &lt;i&gt;by far&lt;/i&gt; the most expressive systems language. That is its primary selling point. It isn’t pretty but it is uniquely powerful. One of the reasons C++ isn’t disappearing any time soon is that it elegantly and efficiently handles some software design problems that Rust struggles with. Rust and C++ are optimized for different types of software.&lt;p&gt;As is implied, the type of software someone is writing has a large impact on whether or not they need the expressiveness of C++.</text></comment>
<story><title>Rewrite it in Rust</title><url>https://github.com/fish-shell/fish-shell/pull/9512</url></story><parent_chain><item><author>xedrac</author><text>Aside from tooling (which is &lt;i&gt;much&lt;/i&gt; better in Rust), C++ just isn&amp;#x27;t a very expressive language and has a high impedance with cognition.  I&amp;#x27;ve worked in C++ for well over a decade, and now that I&amp;#x27;ve used Rust for a couple years, I just don&amp;#x27;t ever want to go back.  It solves too many pain points of C++ to ignore.</text></item><item><author>Night_Thastus</author><text>As someone who works in C++, the build systems are definitely the worst part. QMake is abandoned. Cmake is the de-facto option and is an ancient horrible mess that feels like a miracle if it works at all. What&amp;#x27;s left?&lt;p&gt;Options that are barely supported, severely limited in features, are only reasonable for tiny side projects, etc.</text></item><item><author>rtpg</author><text>I think that C++&amp;#x27;s build system difficulties are _huge contributors_ to people not feeling like C++ is &amp;quot;worth learning&amp;quot;.&lt;p&gt;People do the C&amp;#x2F;Rust comparison, but at least C has a simpler mental model so is a different thing. I feel like C++ has similar, if not more, complexity to Rust and is harder to onboard.&lt;p&gt;I do think there are domains where &amp;quot;let&amp;#x27;s use Rust&amp;quot; are a bit ... aspirational more than anything (anything related to graphics or OS integration...). And there C++ makes a lot of sense. But I think that day by day the number of projects where C++ is the only obvious choice goes down. Hell, it&amp;#x27;s been going down since Java!</text></item><item><author>tayo42</author><text>&amp;gt; C++ is becoming a legacy language and finding contributors in the future will become difficult,&lt;p&gt;This is wild to see written down. Am I alone in feeling like there is a huge disconnect between what people online say and what happens I guess in the real world?&lt;p&gt;Developers I actually talk to never seem to have these kinds of opinions about c++ and alot more reserved about using rust</text></item></parent_chain><comment><author>cozzyd</author><text>If anything, C++ is too expressive...</text></comment>