Elixir

Hey Jow Forums,

Lately I've seen a lot of people shilling about this new language, so I wanted to know your opinion:

1 - Is it really that good?
2 - Is it difficult?
3 - Should I learn Phoenix for web dev?
4 - How's its community?

Attached: elixir.png (618x600, 72K)

I'd suggest learning Erlang instead, it's been around for longer and has better support. Not that elixir is a bad choice it is heavily based on Erlang and uses beam and otp

>elixir
>new
what the fuck

>elixir
>new
well it was new 3 years ago.

phoenix is crap, but still way better than rails/diango or nodejs horseshits

>is it really that good
It's not holy grail of programming languages. Erlang/Elixir are made for fault-tolerant servers in distributed environment and their concurrency model, data structures and libs/tools are made for it. it's not systems programming language. It's good in what it was designed for.
>Is it difficult?
Yes and no. The language constructs are quite easy even for functional programming language, project and dependency management is ok. But learning the OTP, designing bugger software for it and using it's full potential is difficult.
>Should I learn Phoenix for web dev?
Again it has specific niche - low-latency communication of client with server with web sockets. You won't need this for big portion of web dev.
>How's its community?
smaller even with the Erlang island

Attached: aspects-of-learning-pl.png (746x510, 114K)

>1 - Is it really that good?
Yes, but not for the reason you think its good. Its ability to do multithreading does not give it any huge advantage over other programming languages unless youre writing your own web server. http is a stateless protocol, adding
>2 - Is it difficult?
Elixir takes the best ideas of Ruby and Closure, it feels like your programming in Ruby as long as you stay away from recursion. Seriously, you can program in Elixir just as easily as Python or Ruby.
>3 - Should I learn Phoenix for web dev?
No, youve done no research, your looking for a meme answer, there are plenty of other web programming threads where people will tell you what you should do. If you actually take the time to open a book and learn Elixir then you might be worth wasting time on, Im really done with trying to give advice to Jow Forums on good programming languages, its always a waste of my time as the conversation never goes anywhere.
>4 - How's its community?
It has a community, the people who use it love it, if you need a community to hold your hand and validate you then use PHP. If youre willing to think on your own and choose a language that you think is best instead of whats going to provide you training wheels then maybe its worth it to go it alone with Elixir

it's flavour of the week among the bay area faggotry

the nodejs obsession of recent years is going to leave the handful of non-failures there with one absolute bastard of a maintenance hangover

Meme esoteric hobbyist language made by literal monkeys (that is, Brazilians).

Learn Erlang faggot.

[Insert new language name] is just a meme. Always wait a few years to see if it sticks around on its own merit

>1 - Is it really that good?
For long-running servers, it's awesome. BEAM has unique properties to help you build them quickly and reliably. For data processing command line utilities it is not the best choice due to the relatively long VM startup (at least hundreds of milliseconds), low numerical performance and no ability to build binaries.
>2 - Is it difficult?
The language itself is easy. It's the OTP that takes a long time to master.
>3 - Should I learn Phoenix for web dev?
Sure, it's become the third framework people bring up for new projects after Rails and Django. It is production ready, but it lacks libraries in some areas. For instance, authentication is harder to do and less standardized than in Rails, Django, Laravel or Spring.
>4 - How's its community?
Small, but pretty active. The library situation is improving every day. There is a fairly good forum and knowledgeable Stack Overfrow users.

>it's flavour of the week among the bay area
It's far from it. That would be TypeScript, a Vue.js SPA on the front end and Apollo.js on the back end.

>Its ability to do multithreading does not give it any huge advantage over other programming languages unless youre writing your own web server. http is a stateless protocol, adding
How well do you know Elixir?

>hobbyist
WhatsApp, Discord, Pinterest, SquareEnix and many others huge companies are using Elixir for their core back-end infrastructure.

unironically, Elixir is the most fun FP lang outside of common lisp (which isn't FP)

I know the syntax well. Ive tried most all the other functional languages and I know that Elixir provides much more natural syntax thats less forced into FP while still being a pure functional language

>while still being a pure functional language
Elixir is not purely functional

>4 - How's its community?
Honestly, massive community is a sure way to make a language a clusterfuck.

Even though Java, for example, is extremely popular, it has nothing like the clusterfuck of Javascript to deal with. And the state of npm/etc is directly related to how popular it is.

yes it is, Elixir transpiles into Erlang you dumb fuck

Do you even know what are you talking about, you "dumb fuck"?

- First, neither Elixir nor Erlang are purely functional, since functions can have side effects (e.g. IO.gets/1).
- Second, Elixir is not transpiled into Erlang: Elixir is compiled into BEAM bytecode.
- Third, fuck off.

its baby's first functional programming but it's an excellent language. great syntax and great performance due to the Erlang OTP.

Phoenix is the best backend framework ive ever used no question.

Attached: 1425164193029.png (555x797, 452K)

>- First, neither Elixir nor Erlang are purely functional, since functions can have side effects (e.g. IO.gets/1).
OMG!!! it has I/O functions that dont use monads, its not functional!!!
peddle your FP cool-aid somewhere else kid

>- Second, Elixir is not transpiled into Erlang: Elixir is compiled into BEAM bytecode.
No its not, its lexed directly into the Erlang AST, I went to a talk where Robert Virding showed exactly where in the compler chain Elixir code is compiled to, and its compiled to syntactic/semantically correct Erlang code, there is no JVM virtual OP-codes that can take different syntax

- Third, fuck off.
eat shit, youre the one that brought your stupidity to me, I could give a fuck what you think

>((((WhatsApp(((((Facebook))))))))), (((Discord))), ((((Pinterest)))), ((Square Enix))

nodejs is NOT horseshit, the only annoying thing is lots of modules still use the old callback syntax

Do you understand the concept of pure function and a purely functional programming language? do you know what intermediate representation is? have you ever heard of Erlang's abstract format and BEAM's assembly? are you too faggy to accept that you were factually wrong?

>OMG!!!
>>>/leddit/

We actually just outsourced our entire devops to some cheap as chips Indian company. Any OTP compliant Erlang / Elixr program can handle egregious failure and because all our updates happen live even a pooinloo can run a relup in reverse. No more on-call bitches

Good choice op!

use Go

nodejs *web frameworks* are horseshit.

>nodejs *web frameworks* are horseshit.
they were all written by pic related, not a joke, and he is a graphics art guy turned programmer with no formal training in programming

Attached: images.jpg (225x225, 7K)

You talk speak aggressively with little provocation despite your knowledge being on the level of "I know the syntax well" and "http is a stateless protocol" (duh). Learn more about Elixir, the OTP and FP in general before you talk about them. Also helpful would be a little humility and knowing that "you're", "you've", etc. is spelled with an apostrophe.

Good post, thanks.
Also checked.


>The language itself is easy. It's the OTP that takes a long time to master.

This.
If you learn Elixir, you will (should) spend 45% or your time learning Erlang, 45% of your time learning OTP and 10% learning actual Elixir syntax.

But Erlang is a very slim language (not unlike C in terms of "size of the language") and I enjoyed learning Erlang a lot.


Brainlet post.
>neither Elixir nor Erlang are purely functional, since functions can have side effects (e.g. IO.gets/1)

But you do know that every I/O isn't "pure funtional programming" anymore? It doesn't matter if you call it Monad, I/O can never be "immutable" by definition..

>If you learn Elixir, you will (should) spend 45% or your time learning Erlang, 45% of your time learning OTP and 10% learning actual Elixir syntax.

I created several elixir projects, some are phoenix webapp, some using ports and nifs to connect to python/c libraries.

And I haven't yet found the absolutely need of having to learn erlang or OTP for doing that.

Fair enough, I think it depends on your use case and the reasons you want to learn it.

But I'd suggest getting the deep dive into Erlang before looking into Elixir, just like you should learn C before C++ or Scheme before CL.

who is this gailord

That's Johnathan M. Elixir, the lead developer of the Elixir language, you dimwit.

to be fair Elixir's creator is handsome as fuck, unlike this faggot.

You should learn Erlang because eventually you'll need something like SSH from the standard library, which is only documented in Erlang's docs, or to read the code of a pure-Erlang library. (Though, I think, there is now an Elixir wrapper for SSH.)
>I'd suggest getting the deep dive into Erlang before looking into Elixir
Not sure about diving deep into Erlang or learning it first, but will need to get a feel for Erlang eventually. Elixir is a larger, more complex language with more features. If you understand Erlang, you'll understand Elixir's design beyond "Ruby syntax lol" because you'll know what limitations of Erlang motivated it.

>Scheme before CL
wut? who told you that?

>3 years
>not new
maybe if you're a cumguzzling latte sipping faggot

It wasn't created three years ago. user is clearly saying that it made sense to consider it new three years ago.

TJ Holowaychuk

N-No! Something I like can't be the flavour of the month!!

To be honest, Elixir v1.0 was released 3 years ago, so it's still pretty new.