Jump to content

Babel (transcompiler)

From Wikipedia, the free encyclopedia

This is an old revision of this page, as edited by Zuse (talk | contribs) at 12:53, 25 July 2023 (Transpiling TS to JS is one of many ways to use Typescript). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.

Babel
Original author(s)Sebastian McKenzie
Developer(s)Contributors
Initial releaseSeptember 28, 2014; 10 years ago (2014-09-28)[1]
Stable release
7.13.14 / March 29, 2021; 3 years ago (2021-03-29)[2]
Repository
Written inJavaScript
Operating systemLinux, macOS, Solaris, FreeBSD, OpenBSD, AIX, Microsoft Windows
TypeCompiler
LicenseMIT[3]
Websitebabeljs.io

Babel is a free and open-source JavaScript transcompiler that is mainly used to convert ECMAScript 2015+ (ES6+) code into backwards-compatible JavaScript code that can be run by older JavaScript engines. It allows web developers to take advantage of the newest features of the language.[4]

Developers can use new JavaScript language features by using Babel to convert their source code into versions of JavaScript that a Web browser can process.[5] Babel can also be used to compile TypeScript into JavaScript.[6] The core version of Babel was downloaded 5 million times a month in 2016, and this increased to 16 million times a week in 2019.[7][8]

Babel plugins transform syntax that is not widely supported into a backward-compatible version. For example, arrow functions, which are specified in ES6, are converted into regular function declarations.[9] Non-standard JavaScript syntax such as JSX can also be transformed.[10][11]

Babel can automatically inject polyfills provided by core-js[12] for support features that are missing entirely from JavaScript environments. For example, static methods such as Array.from and built-ins such as Promise are available only in ES6 and above, but they can be used in older environments if core-js is used.

See also

References

  1. ^ "first commit". Babel Github. Retrieved 2021-01-26.
  2. ^ "Babel Latest Release". GitHub. Retrieved 29 March 2021.
  3. ^ "babel/LICENSE at master". GitHub. Retrieved 12 May 2018.
  4. ^ "Technology Radar | Emerging Technology Trends for 2017 | ThoughtWorks". www.thoughtworks.com. Retrieved 2018-05-12.
  5. ^ "Why Babel Matters | codemix". codemix.com. Retrieved 2018-05-12.
  6. ^ Using Babel with TypeScript, TypeScript official website
  7. ^ "The State of Babel · Babel". babeljs.io. Retrieved 2018-05-12.
  8. ^ "Babel's Funding Plans · Babel". babeljs.io. Retrieved 2020-08-01.
  9. ^ "Plugins · Babel". babeljs.io. Retrieved 5 July 2019.
  10. ^ "Introducing JSX - React". reactjs.org. Retrieved 2018-05-12.
  11. ^ "Using React and building a web site on Azure". Microsoft Faculty Connection. Retrieved 2018-05-12.
  12. ^ "core-js". GitHub.