Rust as a gateway drug to Haskell
1–10 of 218 posts
Re: Rust as a gateway drug to Haskell
#2Re: Rust as a gateway drug to Haskell
#3Re: Rust as a gateway drug to Haskell
#4Something that I found about going from Haskell to Rust was that Rust provides many powerful abstractions without compromising on performance. It was very frustrating to try reasoning about performance in Haskell due to its laziness. Every language has quirks about how to write performant code, but Haskell is notorious in my mind for being quite easy to write obscenely slow code in.
Ran across Option in it the other day, though it's not used heavily. I really wish there was something like Haskell but with a runtime like Nim or Go. Perhaps that is OCaml?
Re: Rust as a gateway drug to Haskell
#5Something that I found about going from Haskell to Rust was that Rust provides many powerful abstractions without compromising on performance. It was very frustrating to try reasoning about performance in Haskell due to its laziness. Every language has quirks about how to write performant code, but Haskell is notorious in my mind for being quite easy to write obscenely slow code in.
+1
One approach that occurred to me was to use Haskell and Hackage for prototyping a design and then a Rust implementation for production.
It also reminds me of this from several years ago: GHC honcho Simon-Peyton Jones saying the next Haskell will be strict, but still pure with effects only via monads. [1], [2].
Following on and presumably related to that PureScript is strict. [3]
[1] https://news.ycombinator.com/item?id=1924094
[2] http://www.cs.nott.ac.uk/%7Egmh/appsem-slides/peytonjones.pp... (PowerPoint) Slide 40
[3] https://github.com/purescript/purescript/wiki/Differences-fr...
Re: Rust as a gateway drug to Haskell
#6Interesting reading but the author seems intent on pushing some buttons.
Re: Rust as a gateway drug to Haskell
#7Well, Java allows it, even if it looks a bit unglier than the Rust example.
> T min (T a, T b) {
if (a.compareTo(b) > 0) { return b; } else { return a; }
}
And even without general availability of concepts (already in gcc 6.x), one can achieve it in C++ via if constrexpr.Re: Rust as a gateway drug to Haskell
#8Something that I found about going from Haskell to Rust was that Rust provides many powerful abstractions without compromising on performance. It was very frustrating to try reasoning about performance in Haskell due to its laziness. Every language has quirks about how to write performant code, but Haskell is notorious in my mind for being quite easy to write obscenely slow code in.
Trying to compete with Rust or C++ performance in Haskell is certainly frustrating to reason about :)
Re: Rust as a gateway drug to Haskell
#9Something that I found about going from Haskell to Rust was that Rust provides many powerful abstractions without compromising on performance. It was very frustrating to try reasoning about performance in Haskell due to its laziness. Every language has quirks about how to write performant code, but Haskell is notorious in my mind for being quite easy to write obscenely slow code in.
Re: Rust as a gateway drug to Haskell
#10Something that I found about going from Haskell to Rust was that Rust provides many powerful abstractions without compromising on performance. It was very frustrating to try reasoning about performance in Haskell due to its laziness. Every language has quirks about how to write performant code, but Haskell is notorious in my mind for being quite easy to write obscenely slow code in.