Live data from Hacker News

Elixir v1.3 released

elixir-lang.org

71–80 of 125 posts

Re: Elixir v1.3 released

#71

Earlier quoted context omitted.

When you say BEAMs future is not as bright, what indicators are pointing you in that direction?

Relative to LLVM, I mean. I don't think there are any huge red flags with regards to BEAM.

Apples and oranges. LLVM is not a virtual machine, it's a compiler development infrastructure. But JVM vs. BEAM is a sensible VM comparison.

Re: Elixir v1.3 released

#72

Earlier quoted context omitted.

I used to do Scala prior to coming to Elixir, mainly by using Play Framework to create web apps. I can tell you that I love Elixir and that I will not be going back to Scala. I miss nothing from Scala. * Pattern matching in Elixir is superior to Scala's in every way possible (You can pattern match on function parameters!!) * Async code is a breeze with Task.async()/Task.await() instead of mapping on Future's everywhe…

> * No more JVM! You're just trading one VM for another, though. How does having a Beam VM environment differ from a JVM environment?

To me, there's an interesting point here. Elixir has the advantage of targeting a VM built for a language semantically similar to Elixir; things that have frustrating limitations in JVM functional languages like Scala and Clojure (eg, tail calls) just work on BEAM. Interop, naturally, is also much smoother. Want to call out to some Erlang code? Fine - that'll be ':module_name' instead of 'ModuleName'.

On the other hand, the Java/JVM ecosystem is much larger, so there's a serious trade-off there.

Re: Elixir v1.3 released

#73
post #65

Super excited for this release. I have to say that learning and using Elixir has been more pleasant than any other language I have ever worked with. Code is easy to follow due to the functional nature of the language, and the community is one of the best out there. The applications I've written and deployed have been more stable and fault-tolerant than anything else I've ever done, and I've yet to have any performanc…

How hard have you pushed Elixir in production?

Snide aside, it's not this mystical technical panacea. As for community... it has had a large upswell of Rails developers... for better and for worse.

That said, I've had a wonderful experience with all the places I've used Elixir in production or soon to be in production.

Re: Elixir v1.3 released

#74
post #7

Awesome! Elixir is quickly becoming my new go to language for the web apps and more. Come for concurrency, stay for metaprogramming. :-)

I've been burned by trusting Rubyists with metaprogramming before...

Re: Elixir v1.3 released

#75
Great! We're busy rewriting a part of our Rails app that we are having difficulty scaling in Elixir. So far what I've seen is phenomenal. Coming from Ruby/OO, it's a bit weird sometimes, but the code is very readable and it's insanely fast. Really the first language since Ruby that I'm quite happily riding the hypetrain for.

Re: Elixir v1.3 released

#76
post #61

I use phoenix and elixir, I agree with the statement that Elixir is awesome. But don't drink too much cool-aid - Elixir might be dangerous as well. It is essentially a big pile of macros, so sometimes number of keywords that you have to keep in your head is staggering. Also, Elixir is a pretty big language - I knew Erlang before diving into it - so the barrier and number of concepts that you have to get familiar with…

The fear about macros in Elixir itself seems a little overblown. Most macros are consumed in the same way you would consume functions or keywords in another language (e.g. defmodule/def/defp/if/unless/etc.). The only one that I can think of that can be problematic is `use`, which is more of a problem with third-party libs where someone might do a lot of "magic", but in general is mostly used to do things like import functions, alias modules, etc. The concern about macro abuse is certainly valid, but I don't feel like it's at all a problem with the core language, but rather abuse by people who feel the need to use macros for things which do not require macros. In addition, macro usage in Elixir is always explicit - you must import/use macros at the top of a module, and the implementation of those macros is easy to find by going to that module definition. It's not nearly as dangerous as say, monkey-patching in Ruby.

In any case, just wanted to chime in with my two-cents. I've been working in Elixir for the last couple of years and have never felt like I've been bitten by macros. Elixir is certainly a bigger language than Erlang, but many of the things Elixir adds on top of Erlang are what make it so pleasant to work with. For example, the reduction in boilerplate for gen_servers which is made possible with `use GenServer` in Elixir.

Re: Elixir v1.3 released

#77
post #73
post #65

Super excited for this release. I have to say that learning and using Elixir has been more pleasant than any other language I have ever worked with. Code is easy to follow due to the functional nature of the language, and the community is one of the best out there. The applications I've written and deployed have been more stable and fault-tolerant than anything else I've ever done, and I've yet to have any performanc…

How hard have you pushed Elixir in production? Snide aside, it's not this mystical technical panacea. As for community... it has had a large upswell of Rails developers... for better and for worse. That said, I've had a wonderful experience with all the places I've used Elixir in production or soon to be in production.

Quite hard, in fact.

My own personal experience doesn't matter much, though, because ultimately Elixir is Erlang and obviously Erlang has been pushed extremely hard in production (Klarna, Heroku, Riot Games, etc.).

Re: Elixir v1.3 released

#78
Without digging into it, the Calendar stuff looks like a strict improvement over Erlang's tuply handling of dates, times and timestamps, which are all tuples with three numbers. This can be confusing/problematic, and something that would benefit from typing to avoid mixing up Dates with Timestamps, say.

Can anyone who knows both confirm?

Re: Elixir v1.3 released

#79
post #78

Without digging into it, the Calendar stuff looks like a strict improvement over Erlang's tuply handling of dates, times and timestamps, which are all tuples with three numbers. This can be confusing/problematic, and something that would benefit from typing to avoid mixing up Dates with Timestamps, say. Can anyone who knows both confirm?

Yes, it absolutely is an improvement over erlang-style tuples IMO, and it also vastly improves the interoperability story between the stdlib, date/time/calendar libs, and database libs.

Re: Elixir v1.3 released

#80
post #62
post #61

I use phoenix and elixir, I agree with the statement that Elixir is awesome. But don't drink too much cool-aid - Elixir might be dangerous as well. It is essentially a big pile of macros, so sometimes number of keywords that you have to keep in your head is staggering. Also, Elixir is a pretty big language - I knew Erlang before diving into it - so the barrier and number of concepts that you have to get familiar with…

I use elixir (and phoenix) as well, and this is my biggest gripe with the language. When reading (and reviewing) code, sometimes you can't logically follow what's going on since most of the code is hidden behind macros. It's ok if I'm on my IDE that helps expand macros to quickly check the flow, but when it's on a webpage or in a gist somewhere, you're on your own.

Is this a community/culture issue where you can keep things in check if you make a concerted effort to dissuade people from using something too much?

Sort of like Rails was big on testing, which was generally a win.

Post reply on HN