package reason

  1. Overview
  2. Docs
Reason: Meta Language Toolchain

Install

Dune Dependency

Authors

Maintainers

Sources

1.13.4.tar.gz
md5=b9793a31ec41f1720923a14d20d51363

Description

reason allows development of Meta Language syntax trees in non-text format. It allows a development model that is equivalent to collaborating on syntax trees that have been committed to a source code repository.

Tags

syntax

Published: 20 Apr 2017

README

Reason: Friendly Syntax & Toolchain for OCaml

Getting Started

Check out the docs which guide you through the basic syntax and toolchain features.

Workflow for compiling to native: http://facebook.github.io/reason/nativeWorkflow.html Workflow for compiling to JS: http://facebook.github.io/reason/jsWorkflow.html

Community

Get in touch! We're on:

Contributing

Documentations

The docs are in the docs folder and the corresponding README there that describes the docs contribution method.

Codebase

See the src folder and the corresponding README.

# On OSX, install opam via Homebrew:
brew update
brew install opam
# On Linux, see here (you will need opam >= 1.2.2): http://opam.ocaml.org/doc/Install.html

opam init
# Add this to your ~/.bashrc (or ~/.zshrc):
#   eval $(opam config env)

opam update
opam switch 4.03.0
eval $(opam config env)
git clone git@github.com:facebook/reason.git
cd reason
opam pin add -y reason-parser reason-parser
opam pin add -y reason .

Note: during the last opam pin step, make sure your local repo is clean. In particular, remove artifacts and node_modules. Otherwise the pinning might go stale or stall due to the big node_modules.

License

See Reason license in LICENSE.txt.

Works that are forked from other projects are under their original licenses.

Editor plugins (which have also been forked) in the editorSupport/ directory include their own licenses.

Credit

The general structure of refmt repo was copied from @whitequark's m17n project, including parts of the README that instruct how to use this with the OPAM toolchain.

Dependencies (8)

  1. reason-parser = "1.13.4"
  2. ocaml-migrate-parsetree < "2.0.0"
  3. topkg >= "0.8.1" & < "0.9"
  4. result = "1.2"
  5. merlin-extend >= "0.3" & < "0.4"
  6. utop >= "1.17" & < "2.0"
  7. ocamlfind build
  8. ocaml >= "4.02" & < "4.05"

Dev Dependencies

None

Conflicts (1)

  1. utop < "1.17"