• FizzyOrange@programming.dev
    link
    fedilink
    arrow-up
    1
    arrow-down
    1
    ·
    edit-2
    1 month ago

    Yes you can. You’re vastly underestimating the size of an f64. Give me a concrete example of a money operation that fails with f64 (for normal companies; assuming you aren’t a stock exchange or Visa or whatever).

    Enums are not a good idea for the currencies either.

    Why not?

    • GissaMittJobb@lemmy.ml
      link
      fedilink
      arrow-up
      3
      ·
      1 month ago

      Yes you can. You’re vastly underestimating the size of an f64. Give me a concrete example of a money operation that fails with f64 (for normal companies; assuming you aren’t a stock exchange or Visa or whatever).

      0.1f64 + 0.2f64 != 0.3f64

      Why not?

      Encoding in assumptions about a fixed amount of supported currencies in a system is broadly speaking not a good idea

      • FizzyOrange@programming.dev
        link
        fedilink
        arrow-up
        1
        arrow-down
        1
        ·
        1 month ago

        0.1f64 + 0.2f64 != 0.3f64

        It does if you round it to the nearest penny.

        Encoding in assumptions about a fixed amount of supported currencies in a system is broadly speaking not a good idea

        Most sensible programming languages allow enums to be non-exhaustive.