Erlang-Red - Erlang interpreter for Node-RED (visual flow based programming) now has initial Elixir support

Hi There,

Some of you might have heard of my Erlang-Red project that I’ve been playing around with.

If not, Erlang-Red is just Node-Red but with an Erlang backend. Why? Because flow based programming (FBP) is done better on the BEAM. Why better? Because FBP is all about message passing of immutable data between concurrent processes. Hm? :thinking:

Why am I posting here?

Because many have asked why I didn’t use Elixir. Not because I don’t like Elixir its a matter of what is more niche - Node-RED is niche, Erlang is niche and therefore Erlang-Red is niche times niche equals more-niche and Elixir doesn’t fit that equation! (That’s a semi-true joke of course!)

Anyway I have included Elixir from the start via a helpers library but since yesterday, I’ve also added direct support for Elixir modules by creating a Elixir module node. Elixir code can be added there (as a module at this stage) and then used in the flow via the function node (which is Erlang code). The prefix for Elixir modules then also becomes the Elixir. - which is the norm (as I understand) when adding Elixir to Erlang code.

Thanks to @mwmiller, the Elixir node can also be viewed/tested over at fly.io.

Any feedback on how I can better handle Elixir code much welcome - currently I’m very naively doing Elixir.Code.compile_file(...) - because that’s the first thing I found :wink:

Cheers!

16 Likes