back
8 comments
Actors seems like an interesting model to increase reuse in embedded systems by sharing concurrent components between users, So i wonder why there isn't a collaborative community doing exactly this ?
In my experience the embedded community is extremely traditional, and most projects are built using C with static memory allocation. There is a lot of excitement around Nerves in the Elixir community though, so be on the look out. I think outside of the traditional community effects, having a garbage collector (even one that's designed for soft-realtime like Erlang) really kills the deal.
There are actor frameworks in c++ like caf and theron, not sure how simple to use though.

As for garbage collection - that's a problem, but maybe with the right dual core mcu with 400Kram(a $2 esp32) and some fancy concurrent garbage collection this will work well ?

Also at first i'm not sure this should be aimed at the embedded community, more towards the maker community.

Erlang provides soft realtime guarantees. GC is extremely light (it's per actor) and often this is sufficient.
Erlang isn't the problem - it's the ubiquity of pi0 like platform that can make it a reality in the MC space. You can't run Erlang on the 8 and 16 bit MC's that are currently used in embedded products. This won't change till you can run Erlang on arduino.
It's my guess that it has only recently that sufficiently powerful (ARM) micro-controllers have become cheap enough for the move from the last generation of mc to be commercially viable. I bet we would be surprised how old some of the mc's are in many recent products.
This looks awesome, but I'd like to see a demo that makes a good 'bang for buck/reliability' case. eg make a simple web service with distributed database and really abuse it - kill nodes and DDOS it and see if it bounces back.