Another great response! We’re having a very good debate!
So far, all of the JS improvements you mention are in the area of performance, of making JS fast. I tend not to obsess about performance. V8 is fast enough for me, which allows me to use transpiled languages with no worries. But in terms of language design, of language theory, JS offers very little, if anything. My one and only contention with JS is that it is a very sloppy and undisciplined language for software engineering, esp. at scale. ECMA cannot fix this without breaking the web.
You’re quite right, it’s tough to find jobs for Smalltalkers. But since I like the language so much, I took it upon myself to advocate for Smalltalk throughout the entirety of 2015. It wasn’t an easy job, but if I can bring in some fresh blood, then perhaps I can turn around Smalltalk’s fortunes. Yes, it’s a long shot, but so is Larry Wall’s attempt to revive Perl (with Perl 6) or PHP 7 trying to arrest PHP’s 5-year decline or Kotlin hoping to break out into the mainstream.
“JS started out as a relatively specific language, and it’s being shoehorned into all of these weird domains with like Electron, and Cylon.js, and it’s being made into a general-purpose language.”
Which is precisely why I’ve been so vociferous with my opposition to JS as a serious software engineering tool. As long as it was sequestered to the web browser for modest-scale applications, I didn’t have a problem with that. But once people started to use it on a grand scale, once it began to spread like a cancer to every other problem domain (it’s metastasizing!), I was shocked into action.
I, too, am very excited about WebAssembly. This will eventually give everyone real choice of programming language for the web browser. Until then, I continue to sound the warning bell.