Reason (programming language)
Paradigms | Multi-paradigm: functional, imperative, modular, object-oriented |
---|---|
Family | ML: Caml: OCaml |
Designed by | Jordan Walke |
First appeared | May 16, 2016[1] |
Stable release | 3.11.0[2]
/ February 25, 2024 |
License | MIT |
Filename extensions | .re, .rei |
Website | reasonml |
Influenced by | |
OCaml, JavaScript |
Reason, also known as ReasonML, is a general-purpose, high-level, multi-paradigm, functional and object-oriented programming language and syntax extension and toolchain for OCaml created by Jordan Walke, who also created the React framework, at Facebook.[3][4] Reason uses many syntax elements from JavaScript, compiles to native code using OCaml's compiler toolchain, and can compile to JavaScript using the ReScript compiler.[5]
The Reason community officially provides ReasonReact as a solution for React-based web applications.[6]
BuckleScript and ReScript[edit]
Reason was originally compiled to JavaScript using the BuckleScript compiler,[7] which was created at Bloomberg L.P.
In 2020, BuckleScript was rebranded to ReScript, essentially creating a separate language that had different syntax from Reason and only compiled to JavaScript.[8]
The ReScript compiler continues to support Reason syntax, and the two languages share that part of the toolchain.
See also[edit]
- Elm – A functional language that uses an abstraction called ports to communicate with JavaScript
- PureScript – A strongly-typed, purely-functional programming language that compiles to JavaScript
References[edit]
- ^ "Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems: facebook/reason". GitHub. Facebook. 2019-03-23. Retrieved 2019-03-23.
- ^ "Release 3.11.0". 25 February 2024. Retrieved 25 March 2024.
- ^ "What is ReasonML?". 2ality. Retrieved 2019-03-23.
- ^ Rauschmayer, Axel (2018). Exploring ReasonML and functional programming. ReasonML Hub. Retrieved 2024-05-14.
- ^ "Overview: ReScript Documentation". rescript-lang.org. Retrieved 2020-08-10.
- ^ "ReasonReact". GitHub.
- ^ "BuckleScript". bloomberg. Retrieved 2022-09-11.
- ^ "BuckleScript & Reason Rebranding". rescript-lang. Retrieved 2022-09-11.
External links[edit]
- Cross-platform free software
- Extensible syntax programming languages
- Free compilers and interpreters
- Functional languages
- Object-oriented programming languages
- ML programming language family
- OCaml programming language family
- Pattern matching programming languages
- Statically typed programming languages
- Programming languages created in 2016
- High-level programming languages
- Software using the MIT license