4 ms·
Why? The compiler knows what the type is, the ide can tell you the type if you need to know - it’s redundant for you to have to type it out.
by dalyons 4y ago
Why? The compiler knows what the type is, the ide can tell you the type if you need to know - it’s redundant for you to have to type it out.
- ivanche 4y agoNow do the code review in GitHub. Ooops!
- wiseowise 4y agoI do code review on GitLab all the time, what’s the issue?
- ivanche 4y agoNo compiler there so the compiler can't tell you the type. No IDE there so the IDE can't tell you the type. You're at the mercy of colleague(s) not to write code like var request = service.call() or, worse, var b = getResult().
- RhodesianHunter 4y agoNever have this issue. I'm not being hyperbolic either. I review Kotlin PRs every day and am never lost for context on a type.
- Iwan-Zotow 4y agononsense this line has zero readability you're not writing code for compilers, you're writing code for people
- toqy 4y agoI prefer inferred types when available. Then an IDE and compiler can get together to provide further details when needed. Honestly f: MyStupidInterface = myStupidMethod(); doesn't tell me much more.
- bottled_poe 4y agoThe era of strong vs weak typing debate has passed. Adopt strong typing, like a professional, or fade into the 90s web. Harsh but fair.
- dalyons 4y agopractically all modern strongly typed languages are adopting or already had type inference from day one, allowing you to do things like var. They give up nothing in terms of strong typing to do so. Forcing people to write manual boilerplate does not equal professional, what a strange take.
- bottled_poe 4y agoThe engineering trade-offs are paid somewhere, better in an objective space than a subjective one.
- dalyons 4y agoi dont know what you mean by this? Fundamentally, this is a story of technology getting better (type inference in compilers) so humans can do less work. We're not pushing the work to some other human place. We're not losing anything in safety, and we're gaining in readability, boilerplate and expressiveness. Its progress!
- 3836293648 4y agoNoone is arguing for weak typing. They're arguing for type inference. They're not even slightly the same thing
- jeremyjh 4y agoThe era of not knowing the difference between static typing, strong typing, and type inference is past. I'm the sort of professional who likes to learn computer science.
- dalyons 4y ago> you're not writing code for compilers, you're writing code for people i agree, thats why i don't want to clutter my code with annotations designed for the compiler, not humans. Type inference is a _good_ thing for readability.
- Larrikin 4y agoYou can just the type hints in the IDE for bad code like the above example. But glancing through my code, that is never an issue in practice because code reviews should have caught the poorly named variable and method. Since the actual size of the code base isn't an issue in the modern world, I personally like that the Kotlin ecosystem discourages the use of esoteric names and non obvious abbreviations. Once you write and read enough of it you stop making poor choices.
- wiseowise 4y agoNonsense is doing compiler work yourself, even bigger nonsense is duplicating for zero reason.