this post was submitted on 26 Jul 2025
1 points (100.0% liked)

Software Gore

1329 readers
1 users here now

A community for posting software malfunctions

Deliberately bad software or bad design is not software gore, it must be something unintentional

Icon base by Delapouite under CC BY 3.0 with modifications to add a gradient and shear it



founded 2 years ago
MODERATORS
 
you are viewing a single comment's thread
view the rest of the comments
[–] FizzyOrange@programming.dev 0 points 1 year ago (1 children)

Why? It sounds like you are under the common and false impression that you can't use f64 for money.

[–] GissaMittJobb@lemmy.ml 0 points 1 year ago (1 children)

You can't use it if you ever want to do any operations on said money, due to the loss of prescision.

Enums are not a good idea for the currencies either.

[–] FizzyOrange@programming.dev 0 points 1 year ago* (last edited 1 year ago) (1 children)

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 0 points 1 year ago (1 children)

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 0 points 1 year 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.