User:Jlin/sandbox/ReScript

ReScript
ParadigmsMulti-paradigm: functional, imperative, modular, object-oriented
First appearedJuly 1, 2020; 5 years ago (2020-07-01)[1]
LicenseMIT
Filename extensions.res, .resi
Websiterescript-lang.org
Influenced by
OCaml, Reason, JavaScript

ReScript is a high-level programming language that transpiles to JavaScript. Its syntax is descended from the Reason programming language, which is an alternate syntax for OCaml.

Since ReScript transpiles to JavaScript, it can access the entire JavaScript ecosystem.[2] It has direct language support for the React front-end web library, including JSX.[3]

Because ReScript is descended from Reason and OCaml, it is a statically typed language with a sound type system.[4]

History

In 2016, Bloomberg first released BuckleScript, a compiler which compiled OCaml to JavaScript.[5] In the same year, the Reason programming language was released, which was an alternate syntax for OCaml that was more similar to JavaScript. As both projects were influenced by JavaScript, Reason and BuckleScript soon became an integrated toolchain.[6][7]

However, the BuckleScript team and the Reason team had different priorities. The Reason team wanted to maintain compatibility with the OCaml ecosystem, while the BuckleScript team wanted to be able to change the syntax to give the best developer experience to JavaScript programmers.[7]

In 2020, BuckleScript introduced a new syntax that started to diverge from Reason.[1] A month later, the BuckleScript team rebranded its toolchain to ReScript, to focus solely on the JavaScript ecosystem and essentially becoming its own language, distinct from Reason.[8] ReScript’s support for compiling OCaml ended with version 12,[9] released in 2025.[10]

References

  1. ^ a b Lou, Cheng (July 1, 2020). "A New Syntax for BuckleScript". ReScript. Retrieved December 21, 2025.
  2. ^ "Language Manual: Introduction". ReScript. Retrieved December 21, 2025.
  3. ^ "Language Manual: ReScript & React". ReScript. Retrieved December 21, 2025.
  4. ^ "Language Manual: Type". ReScript. Retrieved December 21, 2025.
  5. ^ "BuckleScript: The 1.0 release has arrived!". Bloomberg. September 8, 2016. Retrieved December 21, 2025.
  6. ^ "Why Melange". Melange Documentation Site. Retrieved December 21, 2025.
  7. ^ a b Zhang, Bob (February 7, 2021). "A Short History of ReScript (BuckleScript)". OCaml Discourse. Retrieved December 21, 2025.
  8. ^ ReScript Team (August 10, 2020). "BuckleScript & Reason Rebranding". ReScript. Retrieved September 11, 2022.
  9. ^ "Migrate to v12: Language & syntax". ReScript. Retrieved November 12, 2025.
  10. ^ ReScript Team (November 12, 2025). "Announcing ReScript 12". ReScript Blog. Retrieved December 21, 2025.

Content Disclaimer

Informasi ini disarikan dari Wikipedia dan disajikan kembali untuk tujuan edukasi. Konten tersedia di bawah lisensi CC BY-SA 3.0. Kami tidak bertanggung jawab atas ketidakakuratan data yang bersumber dari kontribusi publik tersebut.

  1. The information displayed on this website is sourced in part or in whole from Wikipedia and has been adapted for the purpose of restating it. We strive to provide accurate and relevant information, however:
  2. There is no guarantee of absolute accuracy. Wikipedia is an open, collaborative project that can be edited by anyone, so information is subject to change.
  3. It is not intended to constitute professional advice. The content displayed is for informational and educational purposes only. For important decisions (e.g., medical, legal, or financial), please consult a professional.
  4. Content copyright. Wikipedia is licensed under the Creative Commons Attribution-ShareAlike License (CC BY-SA). This means that content may be reused with appropriate attribution and shared under a similar license.
  5. Responsible use. Any risk arising from the use of information from this website is entirely the responsibility of the user.