Hacker News new | past | comments | ask | show | jobs | submit login

Syntax as well as just that it's a really weird way of thinking about things compared to languages like Java, Python, etc. Elixir seems to be helping some with this, so I guess we'll see.



It's Prolog inspired. It's weird because it never took off like C/C++ like languages.

The language syntax is small enough that I believe it'll take a short time to learn and get use to the syntax versus other languages.


> The language syntax is small enough that I believe it'll take a short time to learn and get use to the syntax versus other languages.

I'm not sure size of syntax has all that much to do with adoption. Case in point: Lisp.


It’s funny because I would take Erlang’s syntax over Elixir’s anyday.


Likewise. I wish I could have Erlang the language w/ Elixir's community and growth.


Can't you? I mean, aren't they interoperable?


The canonical argument order in Elixir is backwards from Erlang (and I will argue just "wrong" with respect to the functional programming paradigm: it is essentially object-oriented corruption... the subject pretty much needs to be the final argument for various forms of functional composition to work; the place where this really becomes clear is when trying to call "reduce", which continues to have the "correct" argument ordering even while almost nothing else does <- though watch me be misremembering the exact place where this clicks as it hasn't been years since I spent a lot of time trying to be happy programming with Elixir :/), so there is a massive impedance mismatch tying to reuse functions and primitives codes in one language from the other (and it almost seems like many Elixir wrappers exist only to reverse the argument order). So, sure: they are "interoperable"... but so are C and Python ;P.


Erlang does not support currying, so having the subject in the last arg does not help much.

Also, the actual ordering is not `func(Args..., Subject)` but instead `func(Args..., Subject, OptionalArgs...)` which bit me more than once.

I like Elixir's consistent use of the first arg for the subject along with the pipe operator, which gives you essentially currying-like behaviour in the first argument.


> it's a really weird way of thinking about things compared to languages like Java, Python

This depends on your background. I have a very hard time thinking about procedural behaviour and state mutations, Erlang's (and other functional language's) model is much easier to keep in my head.


Yeah, syntax is a bit different than the mainstream, but it only takes a week or so to get used to it.




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

Search: