4 ms·
> Ruby on Rails comes to mind even though it is a language and a framework. The same could be said of Elixir + Phoenix in 2019. In a lot of ways, Elixir macros
by AlchemistCamp 7y ago
> Ruby on Rails comes to mind even though it is a language and a framework.
The same could be said of Elixir + Phoenix in 2019. In a lot of ways, Elixir macros and protocols give at least as much power in building DSLs as Ruby-style metaprogramming, but there's no magic and every single module reveals which macros it uses at the top.
It's not quite the stark trade-off Rails offered vs old school Java / PHP development in the mid to late 2000s, though. In that case there was a tremendous productivity advantage for using Rails to make a web app. Now, Elixir offers moderate advantages, that grow with project size but it's competing against already well-developed Rails and Laravel ecosystems which offer excellent productivity in their own right, plus an existing gem/library for "everything".
I love what Elixir's immutability does to make testing and handling larger projects easier and I'm glad to have learned it, but in all honesty I never would have if not for having been focused on a free to use chat app in 2016-2017.