I was talking more about Java/Python. Also Scala has inheritance and OOP. Which don’t exist in elixir has only map.Map + additional field is struct in elixir.
Function capture, enumerations, pattern matching, implicit return and tuples returning status is what confuses new people.
Most try to implement some kind of inheritance in elixir.
Actor model is in OTP. Process, supervison, actor and messages are concepts of OTP. Elixir does not have actor in in its language constructs.
There is no replacement/alternative for OTP if you want distributed systems.
Many tried to reimplement Erlang in their languages and failed miserably.
Outstanding work from the Elixir team. Very good community in the forum.
It’s winter of elixir land. The hype cycle has died. If I have to start a project I will think twice unless it really needs distributed system.
My personal opinion - talent pool, plugins and ecosystem is kind of stagnated. First talent pool is really limited and not readily available. Very few companies use elixir in production. More hobbyists in the community than people who actually use it.
Hex has a lot of plugins which are not updated from long. For many there won’t be a plug-in. You have to write it from scratch.
In Phoenix, they are reinventing magic with LiveView.
Few guys who do elixir consulting gain most from the ecosystem.
As a developer if I have to invest my time learning a new language, I would choose rust or Go.
As a company if I have to start a project, I will check whether I have a requirement of distributed systems.
PS: I have used elixir for past 5 years in production.
I was talking more about Java/Python. Also Scala has inheritance and OOP. Which don’t exist in elixir has only map.Map + additional field is struct in elixir.
Function capture, enumerations, pattern matching, implicit return and tuples returning status is what confuses new people.
Most try to implement some kind of inheritance in elixir.
Actor model is in OTP. Process, supervison, actor and messages are concepts of OTP. Elixir does not have actor in in its language constructs.
There is no replacement/alternative for OTP if you want distributed systems.
Many tried to reimplement Erlang in their languages and failed miserably.