Using exceptions in C++ desktop and server applications overall made sense to me. As I expanded my usage of C++ into other domains, specifically embedded domains, I began to experience more compelling reasons not to use exceptions first-hand…

From lobste.rs

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

    Well, in Rust, it’s a sum-type, with functions that also let you use it like a monad instead of using explicit pattern matching.

    • lysdexic@programming.dev
      link
      fedilink
      English
      arrow-up
      1
      ·
      edit-2
      1 year ago

      Well, in Rust, it’s a sum-type

      The discussion is on to use monads in C++, and not on why is C++ different than Rust.

      I repeat: you do not need sum types to implement a Result monad in C++.

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

        The discussion was about sum types. The top-level comment, the one to which you originally responded, says:

        It’s a shame that sum type support is still so lacking in C++. Proper Result types (ala Haskell or Rust) are generally much nicer to deal with, especially in embedded contexts.