I've programmed in Java, Python, C, C#, TypeScript, VHDL, and some other languages and they all fucking suck in some way.
If it was up to me, I would pick the best parts of the languages/ecosystems and make a Frankenstein language.
And anyway in the end, it's never the language. It's the ecosystem. Just because you can run Java on .NET doesn't mean you should -- because almost no one else does it your way and it's not worth the trouble maintaining some weird approach very few people use. You're never going to get help from library authors when it doesn't work on your weird setup.
JavaScript and TypeScript are not "proper" languages?
Different languages are powerful in different use case dimensions (tradeoffs), and the typical client-side web programming has a very very strong UI angle, which many "more powerful" languages that I am going to guess you have in mind are less adept at.
> JavaScript's redeeming quality is that it is ubiquitous due to being used by browsers.
JavaScript has other properties that make it very adept at a wide range of web app usecases. Languages exist not in isolation, but have a dynamic environment w.r.t. domains they excel in, tooling, mindshare, programming in the small and the large, comlexity, etc.
> I don't think anybody credibly claims it to be a language we would want to use if we were to redesign web programming from scratch today
Dart has tried. Many languages transpile to JavaScript (and have for a long time).
Yet, JavaScript and TypeScript are some of the most popular languages on the planet.
If the web is still around in 20 years, it will be interesting to see whether another language has taken center stage. I'm not quite holding my breath, if only because even with transpilation being around for many many years, no other language has overtaken. I have a hard time seeing WASM changing that outcome in a meaningful way.
Ouch, you posted this on the internet.
Somebody, somewhere is certainly going to claim this. Some of the people with that claim are even going to have a rationale behind it.
And to be fair, the tooling is going to push a lot of opinion. Because as bad as the JS/TS tooling is, its UI component has been evolving steadily while every other tool stagnated. And by now it has quite probably surpassed the 90's RAD paradigm (I mean, I can't make up my mind).
IMO, the language is one of the main things holding those tools back, but most people just won't agree.
Surely that will change someday.
There is a (now inactive) "interface-types" proposal, which has dissolved into "component-types", but this scope-creep definitely is already quite concerning: