Languages “above” JavaScript

JavaScript syntax does not fit all needs. Different people want different features.

This is natural, because projects are different and so are their requirements.

For example, there are a lot of new languages that are translated (converted) into JavaScript before they run in the browser.

Modern tools make transpilation very fast and transparent, effectively allowing developers to write code in another language, automatically converting it to JavaScript “under the hood.”

Examples of such languages:

  • CoffeeScript adds “syntactic sugar” to JavaScript. It introduces a shorter syntax that allows you to write clean and concise code. This is usually what Ruby programmers like.
  • TypeScript focuses on adding “strict typing” to simplify development and support for large and complex systems. Developed by Microsoft.
  • Flow also adds typing, but in a different way. Developed by Facebook.
  • Dart stands apart because it has its own engine that runs outside the browser (e.g. in mobile apps). It was originally proposed by Google as a replacement for JavaScript, but at this point, it needs to be transpiled to run the same way as the above-mentioned languages.
  • Brython translates Python into JavaScript, which allows you to write applications in pure Python without JavaScript.

There are others as well. But even if we use one of these languages, we need to know JavaScript to really understand what we’re doing.

So

  • JavaScript was originally created only for the browser, but is now used on many other platforms.
  • Today, JavaScript is in a unique position as the most common language for the browser, with full integration with HTML/CSS.
  • Many languages can be “transliterated” into JavaScript to provide additional features. It is recommended that you at least briefly consider them once you have mastered JavaScript.