Live data from Hacker News

Elixir 1.2.0 Released

github.com

1–10 of 69 posts

Re: Elixir 1.2.0 Released

#2
How ironic, I was wondering just last night when 1.2 would be released.

I'm a newcomer to Elixir, and have really been enjoying it. As a Python->Rubyist, it's been really interesting to finally hit a functional language, and some of Elixir's most basic features just seem crazy in comparison to what I've come from. Some neat examples:

* Pattern Matching. In other words- you don't assign things to variables, you match things. Elixir/Erlang is just doing algebra behind the scenes. I'm sure this is a gross simplification, but it's enabled me to write some really condensed code that still makes a bunch of sense.

* Streams. I know Node developers would laugh at this being a new concept, but I hit Streams when I was doing Node, and I didn't get it. Streams in Elixir feel much more self-evident, and feel much easier to read.

* The Pipe Operator( |> ). This effectively lets you simplify code by just passing results from one thing to the next. For example(taken from the excellent "Programming Elixir" by Dave Thomas):

$ (1..10) |> Enum.map(&(&1*&1)) |> Enum.filter(&(&1 => [1, 4, 9, 16, 25, 36]

So there, it takes the 1..10 range, maps the squares of each element to an array, then filters the array to just the elements that are less than 40.

It's a surprisingly enjoyable language to program in, and best of all coming from a Rubyist- the performance gains are automatic, especially once you grok some of Elixir's crazier(but easy to understand) powers.

-----

The other thing I really like about it, is how friendly the community seems. I feel personally predisposed toward extremely friendly communities- Ember.js was the first community that made me feel like I had a home- and the care with which Jose Valim and the core team treat people, and the general "Give back everything you can" attitude of the community is really just inspiring.

My newest side project was something I dropped because I thought that the hardware necessary would make it not worth the effort of building it, but now I have complete confidence in it.

I encourage you to take a shot at it if you're looking for a fast, functional language with a clear syntax and easymode concurrency.

Re: Elixir 1.2.0 Released

#3
Using Elixir here for a couple of months, for an app backend, and even for shell script type of projects. Great language, no surprises, and very responsive community -- really, my biggest wish is for more people to try it, as I think it's still relatively niche. Had no previous Erlang experience. While you don't have to write Erlang code itself, you'll over time become familiar with Erlang/OTP architecture concepts, such as GenServer, ETS, distributed nodes, and so on.

Was very happy to see this recent post from Pinterest [1] as a sign that some of the more "mainstream" teams are starting to look at it.

Also, a repost [2] of some helpful tips if you're just getting started.

[1] https://engineering.pinterest.com/blog/introducing-new-open-...

[2] https://news.ycombinator.com/item?id=10278870

Re: Elixir 1.2.0 Released

#4
post #2

How ironic, I was wondering just last night when 1.2 would be released. I'm a newcomer to Elixir, and have really been enjoying it. As a Python->Rubyist, it's been really interesting to finally hit a functional language, and some of Elixir's most basic features just seem crazy in comparison to what I've come from. Some neat examples: * Pattern Matching. In other words- you don't assign things to variables, you match…

I hear Elixir is great, but I understood and still enjoy what you described in Scala, so I don't see what makes it unique. On top of this, it runs on the JVM, so you get to use the entire history of Java libraries whenever you need it.

Your example:

>> (1 to 10).map((x) => x*x).filter(_ Of course, Scala is an extremely complex language, but I just take the features I feel are useful and/or relevant to what I'm trying to accomplish.

Another up and coming JVM language with similar capabilities to Scala is Kotlin. If it can take off on Android, I think it will become quite popular.

Re: Elixir 1.2.0 Released

#5
post #4
post #2

How ironic, I was wondering just last night when 1.2 would be released. I'm a newcomer to Elixir, and have really been enjoying it. As a Python->Rubyist, it's been really interesting to finally hit a functional language, and some of Elixir's most basic features just seem crazy in comparison to what I've come from. Some neat examples: * Pattern Matching. In other words- you don't assign things to variables, you match…

I hear Elixir is great, but I understood and still enjoy what you described in Scala, so I don't see what makes it unique. On top of this, it runs on the JVM, so you get to use the entire history of Java libraries whenever you need it. Your example: >> (1 to 10).map((x) => x*x).filter(_ Of course, Scala is an extremely complex language, but I just take the features I feel are useful and/or relevant to what I'm trying…

With Elixir, you can use Erlang libraries(or just plain Erlang) right inside of it, very similar to what you describe with Scala!

I've never used Scala personally, and my Java programming was all school-related, so sadly I just don't have the relevant knowledge to explain the differences.

Re: Elixir 1.2.0 Released

#6
post #2

How ironic, I was wondering just last night when 1.2 would be released. I'm a newcomer to Elixir, and have really been enjoying it. As a Python->Rubyist, it's been really interesting to finally hit a functional language, and some of Elixir's most basic features just seem crazy in comparison to what I've come from. Some neat examples: * Pattern Matching. In other words- you don't assign things to variables, you match…

> I know Node developers would laugh at this being a new concept

I hope you're not somehow implying that node developers came up with this concept.

Re: Elixir 1.2.0 Released

#7
post #6
post #2

How ironic, I was wondering just last night when 1.2 would be released. I'm a newcomer to Elixir, and have really been enjoying it. As a Python->Rubyist, it's been really interesting to finally hit a functional language, and some of Elixir's most basic features just seem crazy in comparison to what I've come from. Some neat examples: * Pattern Matching. In other words- you don't assign things to variables, you match…

> I know Node developers would laugh at this being a new concept I hope you're not somehow implying that node developers came up with this concept.

Ah, that wasn't my intention! Just, the Node community is probably the closest to the Ruby/Python crowd in terms of overlap, and what I assume might be reading a post from a developer like myself.

Re: Elixir 1.2.0 Released

#8
post #7
post #6

Earlier quoted context omitted.

> I know Node developers would laugh at this being a new concept I hope you're not somehow implying that node developers came up with this concept.

Ah, that wasn't my intention! Just, the Node community is probably the closest to the Ruby/Python crowd in terms of overlap, and what I assume might be reading a post from a developer like myself.

Thanks for the clarification. I figured better to ask you than to hit the 'downvote' button without verification. Happy 2016 :)

Re: Elixir 1.2.0 Released

#10
post #4
post #2

How ironic, I was wondering just last night when 1.2 would be released. I'm a newcomer to Elixir, and have really been enjoying it. As a Python->Rubyist, it's been really interesting to finally hit a functional language, and some of Elixir's most basic features just seem crazy in comparison to what I've come from. Some neat examples: * Pattern Matching. In other words- you don't assign things to variables, you match…

I hear Elixir is great, but I understood and still enjoy what you described in Scala, so I don't see what makes it unique. On top of this, it runs on the JVM, so you get to use the entire history of Java libraries whenever you need it. Your example: >> (1 to 10).map((x) => x*x).filter(_ Of course, Scala is an extremely complex language, but I just take the features I feel are useful and/or relevant to what I'm trying…

https://medium.com/this-is-not-a-monad-tutorial/interview-wi...

That link mentions some of the tradeoffs that Elixir and Scala would have just due to the VMs they run on.

Post reply on HN