Neat project, and I think erlang (or its offshoots, like elixir) are great candidates for this sort of thing.

That said, I take issue with this:

>is great for creating data flows that actually describe concurrent processing, it is just a shame the NodeJS is single threaded

Its not really true, there are `worker_threads`[0] as well as a cluster process module[1] for multi processing.

The nodejs runtime has really come a long way here. Though, it is true that by default, its single threaded, and one could argue, and I'd agree with it, that its much easier to do multi process / multi threaded work on the BEAM since it was built with this in mind from the get go.

Never the less, its not so true that NodeJS is limited to a single thread!

[0]: https://nodejs.org/api/worker_threads.html

[1]: https://nodejs.org/api/cluster.html

Thank you for the clarification :+1:

I think you said it yourself in that by default NodeJS is single threaded so the mystic remains even if it’s not true.

What would be a fun project would be to make worker threads as seamless as processes are in Erlang. Ie back-port all the ideas of Erlang to NodeJs and then implement something like Erlang Red on top of that!

Another example is that Erlang Red, which based on Node-Red, has supervisor nodes that implement the supervisor behaviour. These nodes could now be backported to Node Red so that it would also have the supervisor behaviour in NodeJS.