then definitely disagree about implicit using or file scoped namespaces
There's nothing new in terms of keywords about them, concept itself very simple
and makes code more readable and shorter, that's it.
It's just: "hey, some namespaces are very, very popular - let's make it this way, that you don't have to include them everywhere"
and "hey, why every code is one level indented if everyone is using one namespace per file anyway?"
I would even take it 1 step further. Specify the class name at the top of the file, 0 indentation for functions.
The same _could_ be done with type declaration such as classes and interfaces. If it would be beneficial idea is another thing.
Multiple classes per file with would still be an option of course.
How would you group things without namespaces?
by their physical location?
And I didn't imply that they were new keywords, they were examples of the second category, "new ways of doing things". The text "do the same thing" alludes to that.
> and makes code more readable and shorter, that's it.
Correct, but each new ways of doing things comes at the cost of there now being (at least) two ways to do the same thing.
> It just simplifies stuff, can we honestly call it an expansion of language?
If a source file that was not legal in v5, is now legal in v6, then yes we honestly can and must call it that.
I’d love to have a TypeScript language with the standard library, single binary output, and build speed of Go.
100% true, it is. More keywords in each release. More ways to do things.
e.g. Now we use "record" and "with" keywords, and operators such as "a!.b" or "a?.b" .
And we set projects up with "implicit usings", and "file-scoped namespaces" which do the same thing will less indenting.
While I like all of these, the downside is yes, it's an ever-expanding language.