[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y ] [Home]
4chanarchives logo
Elixir or Go - What to choose. Is Elixir just a meme or actually
Images are sometimes not shown due to bandwidth/network limitations. Refreshing the page usually helps.

You are currently reading a thread in /g/ - Technology

Thread replies: 25
Thread images: 1
File: elixir.png (35 KB, 309x405) Image search: [Google]
elixir.png
35 KB, 309x405
I want something that will scale to extremely high levels with minimal work on my part.

I'm looking at either Elixir or Go.

Elixir's claim to fame:
* Functional so they say fewer runtime bugs
* Built on top of rocksolid Erlang VM used by telecoms. Shits been battletested for decades.

Go's claim to fame:
* Deploy a single binary
* go get is a good package manager replacement
* go fmt means every line of go code you read will look familiar.

---

wat do
>>
Elixir.

Go's type system is trash and lacks generics. go get/go fmt are barely pros for Go. Single binary is mitigated by the fact that you can just dockerize your Elixir app and deploy it.
>>
>>52449047
>will scale to extremely high levels
Both of them well, unless you do something obviously against best practices. The question is more about what you are building, your goals, and what the community is focused on.
>>
>>52449069
Lack of generics really chapped my ass. Sorting structs is such a pain in the ass.
>>
>>52449047
I've only done two small projects in Elixir, and it's already influencing my code in other languages, making me wish I had its badass pattern matching, protocols and the like in my day-to-day. Doing a small project in Go left no such impression on me. Take that as you will.
>>
>>52449107
Any book you would recommend to get up to speed quickly on Elixir?
>>
>>52449172
So the PragProg book isn't bad, but it's not going to do the job alone. If I had to recommend a full intro course , I would say:

1. Programming Elixir by Dave Thomas (Elixir overview and basics).
2. Erlang and OTP in Action (because 80% of what makes Elixir awesome is Erlang).
3. "Elixir Sips" screencast series (round out base knowledge of the language with a bunch of quick examples of how to solve specific problems).
>>
>>52449047
Funny how these actual programming threads fall off but the shitpost "RAM" "Rice" threads hit 180 replies.

Is this board now full of kiddies?
>>
DAT PATTERN MATCHING
>>
>>52449696
Also, just hang out in the IRC channel. Jose is there often and is super helpful.
>>
>>52449747
>"what language should I learn"
>actual programming threads
>>
Elixir is a fucking meme for Fedora tippers.

Go makes it easy to write static-compiled CL tools, which always comes handy. The standard library contains everything you need and is developed and maintained by full-time Google employees, which is a huge plus compared to the 0.1 alpha external library in {Elixir, Haskell, Ocaml, Rust} ... or any other programming language for the enlightened neckbeards.

Don't listen to the
>muuh generics
crowd, these people don't do work.
>>
>>52450200
>static-compiled

so it's 100% shit?
good to know.
>>
>>52450234
Back to your Smartphone background thread.
>>
>>52450268
funny since a smartphone would likely be the only place where one would need to static compile anything anyhow because of how shit they are.

fuck off and take your pleb language with you.
>>
Anyone have any good resources for learning Phoenix? Or should I just basically look at Hartl's tutorial but put Elxir in it instead?
>>
>>52450287
>I have LITERALLY no clue what I'm talking about
>>
>>52450306
don't you have some docker convention to go to you Dev Ops dipshit monkey?
>>
I've been evaluating both to use to create a HTTP router for a mobile API

Both are good at what they do, I'm leaning towards Go because it seems to be better aimed at what I want to do

Elixir is good but I think I would end up getting lost in the FP side rather than getting code done simply and quickly which is what I want

You should also refer to Quora for this kind of thing as its a very popular question

inb4
>quora
It's actually alright and better than asking /g/ for expert opinions usually
>>
>>52449069
>>52449084
Look at these fucking generics crybabies

Most people won't miss generics, you can even use structs in a clever way as you said
>>
>>52450234
>babby can't into strong typing
>>
>>52450444
>static compiling
>strong type system

just....
just die please.

not everyone here works with nonfree shitware which is the only positive case for the shit heap that is static linking.
>>
>>52450352
>quora

Every answer is literally just pajeet shilling his own website/blog/book as a resource.
>>
As someone who knows both Erlang/Elixir and Go decently well here's my opinion:

Go is for the most part a simple language. It feels like C with GC, decent concurrency, and objects. There's not much to learn and if you know a C like language already you'll already know most of the syntax. Gos simplicity is both a good and bad thing. It reduces complexity greatly, but at the same time gimps what you can do. It feels strongly imperative(no easy way to do things like map, filter, loops preferred over recursion, etc.) which is really quite disappointing. Some of its tooling is alright, some of it is hard to figure out and use. It might be worth learning, but it's not all that great of a language.

Elixir has been my go to language recently for anything that requires sockets(http APIs, torrent tracker, etc.) It's a great example of how a language can be both simple and incredibly expressive at the same time. Pattern matching combined with pipes makes for easy to understand code that's declarative. There's also macros, which while tricky at first, are incredibly useful for reducing boilerplate and writing dsls. On top of the language being pleasant to use, the tooling is by far some of the best I've seen. In one command you can create a fully populated directory with tests and configs, with another you can publish your code to the package repo. Even cooler is that you can add your own commands to mix(the cli tooler) simply by defining a module in your project. And all of this is on top of Erlang/OTP.

While Go may have some nice things here and there, I'd overall recommend learning Elixir. With Erlang alive and kicking after 30+ years, I think Elixir has a bright future ahead.
>>
>>52449047

Just learn Erlang.
Thread replies: 25
Thread images: 1

banner
banner
[Boards: 3 / a / aco / adv / an / asp / b / biz / c / cgl / ck / cm / co / d / diy / e / fa / fit / g / gd / gif / h / hc / his / hm / hr / i / ic / int / jp / k / lgbt / lit / m / mlp / mu / n / news / o / out / p / po / pol / qa / r / r9k / s / s4s / sci / soc / sp / t / tg / toy / trash / trv / tv / u / v / vg / vp / vr / w / wg / wsg / wsr / x / y] [Home]

All trademarks and copyrights on this page are owned by their respective parties. Images uploaded are the responsibility of the Poster. Comments are owned by the Poster.
If a post contains personal/copyrighted/illegal content you can contact me at [email protected] with that post and thread number and it will be removed as soon as possible.
DMCA Content Takedown via dmca.com
All images are hosted on imgur.com, send takedown notices to them.
This is a 4chan archive - all of the content originated from them. If you need IP information for a Poster - you need to contact them. This website shows only archived content.