В процессе развития технолгического стека Frontend образовались промежуточные языки, распологающиеся поверх обычного языка.
Данный язык обычно используется чтобы упростить какой-то из аспектов разработки, сделать его более удобным, добавить какой либо подход (его возможности и ограничения). Некоторые фреймворки требует при своем использовании именно опеределенный промежуточный язык.

Схема:
Разработчик -> код на промежуточном языке -> компиляция -> код на языке, понятном испольнителю

Основной языкПромежуточный языкКомментарийРасширения
JavaScriptBabel

https://babeljs.io

Используется в фреймворке ReactJS

.jsx
TypeScript .ts
ReasonMLhttps://reasonml.github.io 
Fablehttps://fable.io 
CSSSASS  
LESS