<story><title>Single Page Applications using Rust</title><url>http://www.sheshbabu.com/posts/rust-wasm-yew-single-page-application/</url></story><parent_chain><item><author>nickbauman</author><text>Clojure has been there as a fullstack language for a lot longer. It also fulfills the story that Elm was trying to do for much longer. And Reagent is a much needed improvement on React.&lt;p&gt;The borrow-checker in Rust is kind of silly tool to use in the context of a managed language (that does GC) like Javascript. I don&amp;#x27;t get it. It&amp;#x27;s like using a backhoe to plant a few geraniums. Am I just not getting this?</text></item><item><author>nilkn</author><text>I am hopeful that Rust can achieve what Elm did not.&lt;p&gt;I really fell in love with Elm early on, back when it was an experimental language for functional reactive programming that just happened to compile to JavaScript. It was an outgrowth of failed experiments in FRP from the Haskell world. I thought it got so many things right -- and it totally did. But then, just as soon as it started gaining real traction, development on Elm went silent and became siloed, staggeringly slow, locked-down, and unresponsive to users. I understand why this happened and I don&amp;#x27;t even hold it against the Elm team, but it certainly stunted the language&amp;#x27;s growth and adoption.&lt;p&gt;Rust has a much more expressive type system than Elm. The Rust world is much more open, responsive, and caring about user concerns. Rust isn&amp;#x27;t afraid to offer unsafe escape hatches even if they&amp;#x27;re not pretty or elegant. With Rust you have the added advantage of being able to use the language for the entire stack, both front- and back-end. That&amp;#x27;s especially compelling because Rust is on its way to being one of the strongest languages for back-end development due to its combination of type safety, expressiveness, and performance.</text></item></parent_chain><comment><author>steveklabnik</author><text>This is a complicated question, and ends up different for each individual. For me, I don&amp;#x27;t see the borrow checker as being more silly than GC, just an alternative, and one that speeds up my development process, not slows it down. I am also, of course, incredibly biased.&lt;p&gt;Rust also has many, many features that are not the borrow checker. Some people prefer Rust because of those features, in spite of the borrow checker.&lt;p&gt;&lt;a href=&quot;https:&amp;#x2F;&amp;#x2F;without.boats&amp;#x2F;blog&amp;#x2F;notes-on-a-smaller-rust&amp;#x2F;&quot; rel=&quot;nofollow&quot;&gt;https:&amp;#x2F;&amp;#x2F;without.boats&amp;#x2F;blog&amp;#x2F;notes-on-a-smaller-rust&amp;#x2F;&lt;/a&gt; is also one of my favorite bits of writing on this topic.</text></comment>
<story><title>Single Page Applications using Rust</title><url>http://www.sheshbabu.com/posts/rust-wasm-yew-single-page-application/</url></story><parent_chain><item><author>nickbauman</author><text>Clojure has been there as a fullstack language for a lot longer. It also fulfills the story that Elm was trying to do for much longer. And Reagent is a much needed improvement on React.&lt;p&gt;The borrow-checker in Rust is kind of silly tool to use in the context of a managed language (that does GC) like Javascript. I don&amp;#x27;t get it. It&amp;#x27;s like using a backhoe to plant a few geraniums. Am I just not getting this?</text></item><item><author>nilkn</author><text>I am hopeful that Rust can achieve what Elm did not.&lt;p&gt;I really fell in love with Elm early on, back when it was an experimental language for functional reactive programming that just happened to compile to JavaScript. It was an outgrowth of failed experiments in FRP from the Haskell world. I thought it got so many things right -- and it totally did. But then, just as soon as it started gaining real traction, development on Elm went silent and became siloed, staggeringly slow, locked-down, and unresponsive to users. I understand why this happened and I don&amp;#x27;t even hold it against the Elm team, but it certainly stunted the language&amp;#x27;s growth and adoption.&lt;p&gt;Rust has a much more expressive type system than Elm. The Rust world is much more open, responsive, and caring about user concerns. Rust isn&amp;#x27;t afraid to offer unsafe escape hatches even if they&amp;#x27;re not pretty or elegant. With Rust you have the added advantage of being able to use the language for the entire stack, both front- and back-end. That&amp;#x27;s especially compelling because Rust is on its way to being one of the strongest languages for back-end development due to its combination of type safety, expressiveness, and performance.</text></item></parent_chain><comment><author>keithasaurus</author><text>I don&amp;#x27;t see clojure in the same realm here. Both rust and elm are geared more toward enforcing correctness through their type systems to tame complexity in large projects. In my experience, clojure, being dynamic, fits more as a comparison to vanilla JavaScript. In a langauge-to-language comparison, I think clojure is somewhat more appealing than JavaScript due to immutability by default and general functional niceties. However, the fullstack comparison is not quite apples-to-apples as clojure (backend) is JVM and clojurescript (frontend) is node. While it works for some people, clojure feels awkward to me as a fullstack language.</text></comment>