5 ms·
Erlang → scalable real-time systems, eg telecoms
by asplake 1y ago
Erlang → scalable real-time systems, eg telecoms
- notpushkin 1y agoYes, though could you perhaps use Elixir there as well? (Sorry, I’m still largely ignorant to this space, but would love to learn more!)
- pdimitar 1y agoElixir has a ton of really good libraries and a very active community. Erlang's is trying to catch up and they have my support as well but for the moment I find Elixir easier to deliver a full app to production.
- notpushkin 1y agoCan’t you use Elixir libraries in Erlang? https://elixir-lang.org/crash-course.html#adding-elixir-to-existing-erlang-programs https://elixir-lang.org/crash-course.html#adding-elixir-to-e... (and that being said, you can also use Erlang libraries in Elixir, so there’s a path for incremental adoption)
- pdimitar 1y agoYou mostly can use Elixir libraries in Erlang but due to how Elixir macros are done and their pervasiveness, the usefulness of that feature is effectively limited. F.ex. Phoenix and Ecto, both extremely prominent and important libraries in the ecosystem, make heavy use of macros due to their nature and feature-set. And they are unusable in Erlang code. Or at least that was the case some year ago. Haven't checked lately. I know there are ongoing efforts towards convergence.
- notpushkin 1y agoHmm, yeah, I think if you want to integrate Phoenix into an existing Erlang application, you’ll probably want to use Elixir as the “main” language and use existing Erlang code from the Elixir app. Or if you really need to run Phoenix inside Erlang, you could make a clean cut and write a portion of the app in Elixir, with an easy way to call it (e.g. start a server) from Erlang. Neither option allows you to use Phoenix without writing Elixir code, though. But since you’re integrating an Elixir lib, writing at least some glue code doesn’t seem like a big deal? (I’ve got to say that I’m not proficient at all neither in Erlang nor in Elixir – I’ve played around with both, but nothing serious.)