Even within the functional paradigm, OCaml offers all the tools Elm does (leading to re-implementations of elm structures like https://github.com/OvermindDL1/bucklescript-tea ), and more — the module system is the biggest one to come to mind, but library authors have even found client-side uses for esoterica like phantom types (ensuring certain safe usage patterns without runtime costs).
Bubbles can be nice, though! For example, some people are confused by the fact that there is a "beta" standard library in addition to the one that Reason ships with - and that at least one popular (arguably the most popular) book on OCaml — "Real World OCaml" uses a third standard library which is neither of those. One can debate how much of a problem or how widespread of a problem this is in practice, but it stands that this is not a problem at all for Elm.
"We chose ReasonML after a previous project of working with JS, React and Flow. We started using Reason back in May. The plan was to use typescript, but after some great experiences with Rust on personal projects, I really wanted a language closer to Rust.
With that said, the learning curve is a bit much due to the lack of beginner friendly documentation. If you do not have experience with an ML like language (Rust, Swift, Scala, Ocaml, F#) AND React, I think it will be painful. Despite that, it is totally worth learning.
The good news is that the core team realizes this and things are changing fast. React was originally designed for an ML based language and you can it's easy to see all the awkwardness of ReactJs removed in ReasonReact. ReasonReact really is an eye opening experience of how good front end dev can be."
I do not think it would be foolish to use it with Vue and Reason is actively used with Node. For instance:
There is a lot of work going into the backend for Reason and I'm pretty excited about this.
You may want to look into this project which is an alternative to the React ecosystem: an implementation of the Elm architecture in OCaml/BuckleScript (and thus Reason).
> What about server-side with Node?
Possible with Reason, yet compilation to native is also possible from Reason... This allows one to use really fast all-OCaml libraries. Like this HTTP server:
- ReactiveConf (I think Sean Grove talked about it)
- React Rally, or wherever Ken Wheeler talked recently – he gave several talks about how Reason is the shit
- I think there was a conference dedicated entirely to Reason — ReasonConf 2018
And Twitter of course.
I see it referenced quite frequently.
I don't follow React development.