4 ms·
But that would only help you if you assign the numeric literal directly to a variable. If you use it in an expression like `foo(10)` or `10 * bar` you would sti
by goto11 3y ago
But that would only help you if you assign the numeric literal directly to a variable. If you use it in an expression like `foo(10)` or `10 * bar` you would still not see the numeric type specified.
So if you want the type to be always explicit, the type specifier should be coupled with the literal like `10[i32]` or similar, so you can write `foo(10[i32])`.
- moss2 3y agoI might not be against that... Assigning variables or calling methods (when you discard the return value) would look the same as is typical in many languages: int x = foo(); // foo() returns int but we can see that in what type x is foo(); // we don't care what foo() returns Named variables in method calls would have to have the type so as to not hide what type a method-as-parameter returns: CoolObject cool_obj = bar(int arg1: foo())