Jump to content

Reason (programming language)

From Wikipedia, the free encyclopedia
This is an old revision of this page, as edited by Franklin Yu (talk | contribs) at 07:35, 22 September 2019 (top: add ReasonReact). The present address (URL) is a permanent link to this revision, which may differ significantly from the current revision.
Reason
ParadigmMulti-paradigm: functional, imperative, object-oriented
Designed byJordan Walke
First appearedMay 16, 2016; 9 years ago (2016-05-16)[1]
Stable release
3.5.0 / July 15, 2019
Typing disciplineInferred, static, strong, structural
LicenseMIT License
Filename extensions.re
Websitereasonml.github.io
Influenced by
OCaml

Reason, also known as ReasonML, is a syntax extension and toolchain for OCaml created by Jordan Walke at Facebook.[2] Reason offers a syntax familiar to JavaScript programmers, and transpiles to OCaml.[3] Statically typed Reason (or OCaml) code may be compiled to dynamically typed JavaScript using the BuckleScript compiler.[4]

The Reason community officially provides ReasonReact as a solution for React based web applications.[5][6]

See also

  • Elm, a functional language that uses ports to communicate with JavaScript
  • TypeScript, a strongly-typed programming language that transpiles to JavaScript

References

  1. ^ Simple, fast & type safe code that leverages the JavaScript & OCaml ecosystems: facebook/reason, Facebook, 2019-03-23, retrieved 2019-03-23
  2. ^ "What is ReasonML?". 2ality. Retrieved 2019-03-23.
  3. ^ Gopher, Stupid (2018-11-12). "One week with ReasonML". Medium. Retrieved 2019-03-23.
  4. ^ "What & Why BuckleScript". bucklescript.github.io. Retrieved 2019-03-23.
  5. ^ "ReasonReact". GitHub.
  6. ^ Wilson, Ian (2019-04-15). "ReasonML with React Hooks Tutorial — Building a Pomodoro Timer".