Why?
Reason comes with JSX support out of the box, and having this project (or another project, I'm personally open to suggestions) support it would be very cool for people that want to work in a typed functional language that isn't JS+Flow.
There are a handful of projects that already work with this (https://github.com/jaredly/reasonml-reactjs-test), but the Reason =>JS pipeline seems to be evolving pretty rapidly.
Why not TypeScript?
Can't speak for @ivosabev, but Reason support appears sensible given that it is a Facebook project (Reason is designed to mirror and extend modern JS syntax).
I'd love to see a TypeScript-type project too, not sure if one has been made that's as well made as this one.
There's a fork of react-scripts that supports TypeScript (note that it's a couple versions out of sync with react-scripts):
Motivation over typescript is that reasonml will have great react bindings. It is based on functional programming, while typescript is more towards class-based OOP.
Typescript can't do stuff well like currying and other basic functional programming things and also has a hard time with typings for ramda and lodash/fp (disclaimer, old knowledge).
I'm looking at bs-loader and would love to have it supported for reasonML support: https://github.com/rrdelaney/bs-loader. Could be fairly trivial in the future.
please check out https://github.com/knowbody/crra
A very nice way to get started with reason.
There is https://github.com/reasonml-community/reason-scripts which is CRA for Reason
I think it makes sense for people to use https://github.com/reasonml-community/reason-scripts for now.
As reason-scripts is now no longer maintained (as far as I can see - see description here), is it worth reviving this discussion and re-opening this issue?
I don鈥檛 think it鈥檚 viable for us to support all popular compile to JS solutions. They have different concerns and while the facade may be similar the implementation should probably stay separate.
My impression is that Parcel + BSB is the recommended way now? https://github.com/reasonml-old/reason-scripts/issues/74#issuecomment-413970554
I might be wrong. Look at Reason website, it will likely give you pointers.
cc @chenglou
Yeah it鈥檚 fine. If everyone wants first-class integration into CRA then it鈥檒l ironically become too heavy for anyone to want to use it!
Most helpful comment
Why not TypeScript?