From Elixir to Go (or other way around)

Anyone done migrating a project from Elixir to Go or from Go to Elixir? What were actual experiences and trade-offs?

(Also on elixir reddit, not everybody is on reddit)


Thanks for sharing! That was an interesting thread. I should really at least get a passing familiarity with Go at some point.

1 Like

Elixir is a very well designed language. I wrote about why I like/dislike Go. The entry barrier is a bit high for Elixir. But (IMHO) there are areas that Elixir is far ahead, like web development (Phoenix) and distributed systems with a high level of reliability and availability.

Evaluating other technologies can be fruitful if one knows her/his goal and whether we like it or not, personal preferences are always at work. Yet tooling and accessibility of a technology can affect that personal preferences.

1 Like

While subjectivity and tastes are indeed always at work, a programmer’s job is multi-faceted and is very rarely (if at all) related to “do I like the syntax?”. Languages like Elixir not only offer a minimal and very powerful stdlib, but a superior and WTF-minimal tooling also.

As for OTP, oh well, it’s an advanced concurrency platform. It cannot exactly be mastered in a weekend and that’s okay.

Elixir and Go have some common ground in terms of striving for minimal confusion and pleasant out-of-the-box experience and I quite like them both for that.

However, Go is verbose and requires a ton of cognitive load to not miss an error or cause a panic but many prefer it that way. If you can get past that, it’s a language with an amazing runtime and arguably unparalleled compiler stack. (I personally am not a huge fan of the language overall because it allows you to pass untyped data left and right.)