rescript-webapi
reagents
rescript-webapi | reagents | |
---|---|---|
2 | 2 | |
141 | 126 | |
0.7% | -0.8% | |
5.1 | 4.4 | |
16 days ago | 12 months ago | |
ReScript | OCaml | |
GNU General Public License v3.0 or later | ISC License |
Stars - the number of stars that a project has on GitHub. Growth - month over month growth in stars.
Activity is a relative number indicating how actively a project is being developed. Recent commits have higher weight than older ones.
For example, an activity of 9.0 indicates that a project is amongst the top 10% of the most actively developed projects that we are tracking.
rescript-webapi
-
Converting a JavaScript React app to a ReScript React app.
This function uses window.location.reload() which is a DOM api. We don't currently have any DOM bindings installed and available for ReScript. Let's go ahead and install some bindings.
-
OCaml 5.0 Multicore is out
This will search in the current directory tree for all files that contain the code pattern 'foo(x, y)' and replace it with 'foo(x)', using Scala syntax rules. It's super convenient for doing large-scale codemods. E.g. https://github.com/tinymce/rescript-webapi/pull/40
reagents
-
Transputer.net
The 1978 paper proposes a reasonable set of primitives and then walks through prose examples with them. The book proposes roughly the same primitives (channels are the big change, but stop is barely in the paper) and describes them in a formal notation for state machines. It's the difference between a sketch of a plausible idea and writing down the mathematics.
Related though much later, ocaml https://github.com/ocaml-multicore/reagents observed that the send/recv primitives make less sense than a swap primitive. Between occam and the current ocaml effort, concurrent ML is the same sort of model with the details really well thought through (e.g. a thread executing stop gets garbage collected).
-
OCaml 5.0 Multicore is out
Still early days, but I had done some exploratory work in the past on Reagents, a composable lock-free library [1]. Now that OCaml 5 is released, we're reviving this work.
It's semantics is weaker than STM -- unlike STM, it doesn't provide serializability but Reagents can compile down to multi-word compare and swap operations, which can be implemented with the help of hardware transactions (when present) or efficient software implementations of it [2]. Hence, Reagent programs should be faster than STM.
[1] https://github.com/ocaml-multicore/reagents
What are some alternatives?
rust - Empowering everyone to build reliable and efficient software.
rescript-react - Official ReScript bindings for ReactJS
eioio - Effects-based direct-style IO for multicore OCaml
unison - Unison file synchronizer
vpnkit - A toolkit for embedding VPN capabilities in your application
mldonkey - cross-platform multi-network p2p daemon
rescript-counter-app - This tiny application is like adding,removing,deleting, resetting products which reflects in the total number of products into our shopping cart.
haxe - Haxe - The Cross-Platform Toolkit
mirage - MirageOS is a library operating system that constructs unikernels
ocaml-jupyter - An OCaml kernel for Jupyter (IPython) notebook
ocaml5-tutorial - A hands-on tutorial on the new parallelism features in OCaml 5