
Having said that, I've never ran into a case where I wanted to use an anonymous function recursively in Elixir. Come to think of it, I don't really use anonymous functions much at all, outside of Enum calls, which handle the recursion part for you anyway. What would be the use case?
On a side note, I think this article provided an outstanding tutorial for writing macros in Elixir. Since macros are how Elixir implements metaprogramming, knowing how to write them is a good thing. I typically use macros to write more expressive guard clauses, but you can do whatever you want with them. Chris McCord wrote an excellent book on macros, called Metaprogramming Elixir, if you want to know more about them.
I really like this language, I've met Jose Valim and he's a super nice, super smart guy, as is Chris McCord. So I feel naturally motivated to promote it. Also, it's just lots of fun to work with!
> it means the ecosystem is maturing if we now can be fashion driven, rather than having to care about "does it work?"
Well in my case, as I said, I got tired of certain classes of Ruby bugs, and certain, shall we say, "uglinesses" which presented themselves, but only after (sigh) YEARS of working with Ruby. In a way that's an argument FOR Ruby! It will only start to look ugly years after you work with it. ;) More than can be said for MANY other languages!
So far I haven't seen too much "ugly" in Elixir (which is good, as it should be in the "beautiful bouncing baby" phase!). In fact, in some ways it's even more Rubylike than Ruby is, such as with being able to define your own sigils: http://elixir-lang.org/getting-started/sigils.html And of course the macro facility is pretty much the ultimate definition of Ruby's oft-touted "metaprogramming." Chris McCord already has a book out on it, actually: http://smile.amazon.com/Metaprogramming-Elixir-Write-Less-Co...