There should be a name for the "nothing is perfect so everything is equally bad" fallacy. It's surprisingly common.
https://www.greaterwrong.com/posts/dLJv2CoRCgeC2mPgj/the-fal...
> The Sophisticate: “The world isn’t black and white. No one does pure good or pure bad. It’s all gray. Therefore, no one is better than anyone else.”
> The Zetet: “Knowing only gray, you conclude that all grays are the same shade. You mock the simplicity of the two-color view, yet you replace it with a one-color view . . .”
> —Marc Stiegler, David’s Sling
I think this falls under splitting (black-and-white thinking), a form of defense mechanism or (I suspect) mere rhetorical tool.
What can be confusing is mixed lifetimes of nested generators using `yield from`. If any outer generator has a shorter lifetime, when it is garbage collected `yield from` will forward `close()` to the inner generator. Attempting to re-use the inner generator will result in a premature `StopIteration`. Iterators do not have `close()` and so are unaffected. This affects only `yield from` and not `for i in gen: yield i`.
The one I'm talking about is the fallacy of grey, linked from a sibling comment.
What do you mean? The time & date API in Java is excellent, and the float and double types follow the IEEE standard.
Dunno what's up with getYear() though!
95 = 1995
96 = 1996
97 = 1997
98 = 1998
99 = 1999
100 = 2000 !?Usually happens through tacking on new features and standard API functions without removing old ones. I wish modern languages would allow different modules within the same project to use different versions of the language and be more aggressive about deprecating/removing old features.
So like if you open a module and see "version 3.0" in the manifest you know for sure that this module is not using stupid feature X from version 1.0. While still being able to use "crucial library not updated since 2003" without much fuss.
Most languages these days don't dare to change core syntax behaviour in order to not break backwards compatibility.
Java is probably the longest lasting language that I would consider good. Are there things that I hate about it? Of course. But it got a lot of things right - even things that more modern languages have done much worse at, like IDE support.