https://github.com/phated/reasonable
(Just an experiment) The ReasonML runtime.
https://github.com/phated/reasonable
Last synced: 6 months ago
JSON representation
(Just an experiment) The ReasonML runtime.
- Host: GitHub
- URL: https://github.com/phated/reasonable
- Owner: phated
- License: mpl-2.0
- Created: 2018-06-02T02:02:42.000Z (over 7 years ago)
- Default Branch: master
- Last Pushed: 2018-06-14T19:40:14.000Z (over 7 years ago)
- Last Synced: 2025-04-02T08:12:46.767Z (9 months ago)
- Language: JavaScript
- Homepage:
- Size: 50.6 MB
- Stars: 78
- Watchers: 8
- Forks: 2
- Open Issues: 0
-
Metadata Files:
- Readme: README.md
- License: LICENSE
Awesome Lists containing this project
- awesome-list - reasonable
README
# reasonable
The ReasonML runtime.
## Status
* Most Reason code will work.
* Accepts a single file or a directory containing `.re` files.
* Native ES imports/exports are used for modules.
* Most of BuckleScript's `stdlib` should work (including Belt!) - though some JS stuff like `Js.log` is still a WIP.
* Shebang support! See the [shebang example](./examples/shebang/Shebang.re).
## Notes
Since `Js.log` isn't implemented yet, you can use `[@bs.scope "V8Worker2"] [@bs.val] external print : string => unit = "print";` to get access to the `print` method in v8worker2.
## Usage
This repo contains a pre-built binary for macOS. You can use it like:
```sh
> ./reasonable examples/fizzbuzz/Fizzbuzz.re
```
Or on a directory of files:
```sh
> ./reasonable examples/dependencies/
```
## Technologies
* Go
* v8worker2
* BuckleScript (self-hosted version)
* Flatbuffers
* Topo.js
## License
MPL 2.0