Sure whatever, you seem very smart, good on you. I am not a pro coder, so having 3 different decimals (float, double, decimals) types is beyond me. And for me, this is exactly what is wrong with this langage. Mostly having to define everything, then create it, then populate it, is overly complex for my small brain, furthermore because this doesn't exist in other langages I came across. Maybe, as I learn more, I will get to appreciate it, but so far, this is really humbling, and a total pain in the arse compared to other langages.
It does exist in other languages, it's just hidden from you. Even in python
blabla = 1
translates more or less to (except in Python every thing is a piece of crap class I've heard)
int blabla = 1
whereas
blabla = 1.0
translates to (I assume) double blabla = 1.
As for why you'd use one or the other, it's a matter of memory but also of speed. Doubles take double the space, which allows circa 10^-16 precision, where float affords 10^-8. This has an obvious impact on RAM usage. The other thing that's less obvious, is vectorized instruction deal in half as many doubles as floats (think of it as automatic parallelization of your code).
At any rate, you'll very quickly know all about the different types of variables you can use. In doing so, you'll have some knowledge of architecture, which is always interesting to have. If you want to learn more on the subject, maybe you could follow some C or Fortran tutorials, which are low-level languages where you'll learn these fundamentals without the clutter of OOP (such as in C++, C#). If you can read french, you can read the
tutorial I used to learn C way back when (it doesn't require any prior knowledge whatsoever).
On a practical level, these kinds of languages allows the compiler to tell you to **** off when you ask for something illegal, which honestly just saves you so much time down the road. In being compiled, they're also much much faster (a dumb loop is potentially 100x slower in an interpreted language such as Python than in C or Fortran).
Frankly, of all the silly high level languages that go around (Python, Julia, Rust or whatever, etc...) and of the little I've seen of C#, I think things will be rather straightforward to code here. At least it's a compiled language ! And if you look at the code, it's just so readable, every variable has a long-ass name but at least you can guess what it stands for.
Old-school Fortran code has variables with capped (short) length and no capitalization, so everything is called x12, y31, lmfro, whatever. Be grateful for these modern languages !