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

Just curious where does Elixir fall in this scheme of things? Any experienced devs who could give a qualified answer, please?


Elixir doesn't really push much of the state of the art forward. It's pretty much Erlang with new clothes (and some nice cleanups). I worked with it for over a year and while I loved the 'fail fast' model of programming, most of the errors that were caught were stupid programming errors that would have been trivial to catch by a type system.

What I really want is a type system for reasoning about distributed, stateful, programs. Has to deal with mixing strongly consistent eventually consistent (CRDT) data with synchronisation points (see Bloom/Lasp), hot code reloads, migrations, messaging across nodes, possibly some sort of row polymorphism combined with clojure's namespaced symbols... Like sort-of like Cloud Haskell but with zero-downtime deployments. Or like Pony but with a better distribution story.


Distributed Pony will be there soon.

https://www.doc.ic.ac.uk/~scd/Disributed_Pony_Sept_13.pdf [pres], https://www.ponylang.org/media/papers/a_string_of_ponies.pdf [paper]

I'm not sold on Cloud Haskell or Clojure.


Elixir is mostly different syntax(Ruby-like instead of Prolog-like) for Erlang. Beyond syntax change it fixes some Erlang warts, ads better metaprograming and great tooling. Elixir isn't academic innovation - it's about proffessionals convinience and effectivness similar as go lang. Started by 1 person.




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

Search: