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

If you're interested in getting all the benefits of the Erlang VM and OTP, but very little of the bad, please check out Elixir (http://elixir-lang.org/).

It's staggering how fun and easy it is to code in Elixir while leveraging the Erlang platform.




But, but... I actually LIKE the syntax of Erlang. It's neat. Consistent. Very simple. And it's modifiable with parse transformations.

Does Elixir give you anything other than ruby-inspired syntax?


> It's neat. Consistent.

That's quite debatable, ",", ";" and "." definitely have a logic about them but I wouldn't use "consistent" to describe them. fn/named functions is rather similar (the syntaxes are rather different).

But the syntax is rather small (if noisy and with more keywords than you'd expect), which is good. Still, it's no Smalltalk.


It's funny, because I was thinking exactly about ';', ',' and '.' when writing about consistency. ';' separates clauses - in functions, 'case', 'if' and 'receive' alike. ',' separates expressions - everywhere. And '.' ends definitions. I find this consistent, but - this being syntax - it's purely subjective, so it's not like I'm disagreeing with you - I just like it the way it is.

It's not Smalltalk with it's six (IIRC) syntax constructs nor is it Lisp, but compared to the syntax of C++ or other rather baroque syntaxes it is simple :)


I agree, besides ruby based syntax (which I don't consider a plus over Erlangs) you get pseudo mutable variables (they are not really but mimic them with a invisible sequence of Erlang like variables). The style that needs this ended up having variables like R1, R2, R2 ... in functions for sequences of operations. Its only it doesn't occur if you write in Erlang style. It might ease the transition for Ruby programmers but it is the second approach already to have Ruby syntax on the Erlang VM. The first one was abandoned probably because nobody used it. We'll see where this one will be going, its pretty young still.




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

Search: