Hello fellow FP-Lemmyites. I’d love to hear stories about what got you interested in FP originally, and how you learned.

  • philm@programming.dev
    link
    fedilink
    English
    arrow-up
    1
    ·
    1 year ago

    I consider myself a relatively experienced Rust programmer (5+ years experience, 2-3 years professional).

    I think it excels in most aspects, but advanced “type-meta-programming” and currying. But I think even this may be a good thing, because often higher-kinded types and lazy-evaluation is either mental overhead or leads to unpredictable performance (looking at you Haskell), so that the programmer doesn’t get the idea to get too fancy, when the issue at hand is much more simple. Also often the syntax is a little bit boilerplaty compared to something like Haskell, but also this could be seen as a good thing, as everything is “documented” within it, IMHO it feels easier to read that way (as long not, something isn’t hidden behind a crazy (proc-)macro (which still can be a good thing, but should be used carefully)).

    Non the less I think it could improve with more advanced type-metaprogramming (and inference), because often you have like 5 lines of trait-bounds that are not really interesting for the end-user and should IMHO be inferenced (and communicated by the compiler otherwise). But I think after reading a few articles of compiler devs (like https://smallcultfollowing.com/babysteps/blog/2022/09/22/rust-2024-the-year-of-everywhere/) I think this will indeed improve soon, and it did already considerably over the time I’m programming in Rust.