3 ms·
That answer hasn't changed, in fact as of today OCaml and F# have diverged more than they had back then. BuckleScript and ReasonML are solid for the frontend,
by yawaramin 8y ago
That answer hasn't changed, in fact as of today OCaml and F# have diverged more than they had back then.
BuckleScript and ReasonML are solid for the frontend, though. I would recommend them without hesitation. For the backend, F# could be nice but as I mentioned, you would share almost nothing between them. If you're looking for a universal (i.e. same language on BE/FE) stack there are many options today, but a classic one is https://ocsigen.org/eliom/ https://ocsigen.org/eliom/
- delhanty 8y agoThanks very much for that perspective and the link. It certainly sounds more attractive than writing everything in Javascript and using Node! I'm interested in writing a portable, commercial 3D CAD modeling library. F# has already been used commercially for some years for 3D CAD on Windows. So F#, when compared with Ocaml, is a relatively easy sell into that market as it doesn't add another dependency.
- kbd 8y ago> but a classic one is https://ocsigen.org/eliom/ https://ocsigen.org/eliom/ I didn't know there were any other attempts at a "universal" platform since Meteor. Thanks for sharing! Please let me know if there are others that you think are worth learning.
- Bogdanp 8y agoYou may want to check out Ur/Web as well.
- yawaramin 8y agoSure :-) Another one I admire is http://opalang.org/ http://opalang.org/ . It too is based on OCaml, funnily enough. The last commit is from last year, though, so this is not a project on the rise. Here's one for Scala (and Scala.js): https://udash.io/ https://udash.io/ . It has a lot of cool concepts, like out-of-the-box push notification support with WebSockets. And I am more familiar with Scala than anything else so it is attractive. The only thing that gives me pause is that I've used Scala.js in the past, and its compile times are not something I want to deal with again after using faster transpilers like BuckleScript. Finally, the one I'm keeping my eye on is https://dockyard.com/blog/2018/12/12/phoenix-liveview-interactive-real-time-apps-no-need-to-write-javascript https://dockyard.com/blog/2018/12/12/phoenix-liveview-intera... . The idea here is to serve static HTML with a minimal bit of JavaScript needed to maintain a live connection to the server, over a WebSocket, and drive dynamism that way. Think React+Redux, but driven from the server side. The client can be mostly a dumb client again. This one has a promising future, with lots of optimizations and benefits falling out of using the Erlang runtime properly.