Hacker Newsnew | past | comments | ask | show | jobs | submitlogin

What is great with Elixir is that, it is so simple and non-bloated.

The BEAM (the Erlang/Elixir etc. VM) is a kind of operating system for the language, a kind of framework, that makes simple but profound choices.

The simplicity make it extremely powerful: everything is immutable, functional paradigm everywhere, everything is isolated in process and hierarchy of process, reliability is top-notch, async is best-in-class. This is the most logical, non-bloated and expressive language I have ever used.

On top of that, main libraries are awesome: Ecto (ORM and forms) is just awesome, Phoenix + Liveview is awesome, Req (for HTTP request) is great, Livebook (for prototyping) is great, etc. By the way, do you know that Ecto (made by José Valim himself IIRC) takes inspiration from LINQ? I'm doing "classic" web stuff, if those libraries weren't there in my case, I would not be using Elixir I don't have scale problem or else - I would love to dive into clustering etc. because it's also "battery-included". In fact, what makes Elixir great is the root choices and root libs, are great (powerful and simple).

The only problem I see: - lack of adoption which implies sometimes missing lib (but you can interface w/ other languages like rust or whatever) - lack of types make it prone to some bugs (typically atom - akin to keywords - comparison) and also editor inference is less powerful - but it is coming - tooling could be faster

But really: simplicity + expressivity

As a side note for me the problem I see w/ C#: mainly is because of Micro$oft (i have ethical concerns) and also "larger" in a more bloated to me (hard to beat Elixir). But otherwise it seems great



Guidelines | FAQ | Lists | API | Security | Legal | Apply to YC | Contact

Search: