However, there could be a really nice language emerging from the swamp.
Arrow notation, destructuring, functions as first class with underlying lambda calculus semantics (as opposed to lisp), async/await, back tick templating - strong features. Just need to get rid of the old cruft. Typescript and friends seem a good first step towards an implicit type system.
Trying to get an average new developer up to speed in a modern JS environment is ridiculously hard. There are so many things that only exist due to historical accident. It's basically a big ball of mud, where being a swamp guide is more important than being an engineer.
As a big ball of mud, it will be really hard to replace. There's too much value in being a swamp guide, so the swamp guides will resist anything that will take away from their status.
Webassembly is the way forward. Why create a new language when you can use any language though WASM. It is already built around capabilities and you can implement an actor system easily, something that has already been done (https://wasmcloud.com/) for the backend.
I would love a [forked] Ruby to replace Javascript. Have it embedded in browsers too.
In my opinion, the web in general should be retired. It's ultimately a technology originally designed for rich documents that has been feature-creeped to be a general-purpose application platform, and that results in a variety of issues. I think we should move towards using domain-specific open standards.
> But since then, there has been strong interest in further bloating the language instead of making it better.
Totally agree. JS the Good Parts is what got me into JS around 2007. It used to be so accessible, this neat subset of features, coupled with the DOM.
The web in general has the problem of a million ways to do the same thing, and none of them works quite right.
I actually think we need to teach a different way of using and embrace client minimalism with streams.
Even though I suspect stadia is going to get shutdown, I believe in using the network as the computer with edge computing to turn the browser into a dumb terminal. This is the basis for the web framework that I am making.
I'm having lots of fun.
Bury it in the desert. Wear gloves.
Millions of JavaScript monoglot voices suddenly cried out in terror. Unfortunately, they won't be suddenly silenced.
The JS community has done some awesome things to bring the language to a more mature and interesting place, in spite of Crockford.
His awful book that tried to teach JS like Java, and his framework at yahoo called YUI stood more in the way of progress than anything else.
Criticism is certainly warranted but I don’t see him having a track record of creative and interesting thought in this space to offer it
I'm intrigued by his replacement, the language E. Even though it arose in 1997, I was unfamiliar with it. I like what I have seen so far, http://erights.org/elang/
I'm relieved that Crockford suggests a substantial alternative, and wasn't just bashing JavaScript. In fact I was surprised by the headline, given his history of defending the language. Instead of just suggesting another popular language like Python or Ruby, he is more specific: "It needs to be a minimal capability-based actor language that is designed specifically for secure distributed programming. Nothing less should be considered."