Of course, I have alternatives.

Let’s first identify the “good parts” of JS. These include first-class functions and closures, object-orientation (via prototypes), and dynamic typing. Everything else you can name (like async callbacks and method chaining) stems from these things. There are no other “good parts.”

Smalltalk has these things, too. Smalltalk doesn’t have object prototypes, but outside of JS nobody wants prototypes. Everybody wants traditional OOP with classes. Smalltalk is the consummate OOP language.

Smalltalk is one of the smallest, simplest, and most elegant programming languages in the world. JS pales by comparison.

Ruby is another language that has all of these things. Python, too. Come to think of it, so does Dart.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store