<story><title>My favorite Erlang Program (2013)</title><url>http://joearms.github.io/2013/11/21/My-favorite-erlang-program.html</url></story><parent_chain></parent_chain><comment><author>lostcolony</author><text>What I found interesting (or very, very boring, depending on how you think about it) about this when I first saw it is that this ability is just due to the nature of how receive works. That is, you can receive any kind of message, at any time. Want to listen to a different set of messages? Just call a different receive clause, be that in a different function, or inline.&lt;p&gt;I remember having a coworker who was in love with Akka. He was trying to sell everyone on it, despite my team&amp;#x27;s having a strong Erlang presence. He showed us Akka&amp;#x27;s &amp;quot;become&amp;quot;, talking about how powerful that could be, and how Erlang didn&amp;#x27;t have anything comparable. He didn&amp;#x27;t seem to realize that Akka&amp;#x27;s needing a special keyword for it was actually a limitation rather than a feature, that Erlang didn&amp;#x27;t have a special keyword to allow you to do it because it didn&amp;#x27;t -need- a special keyword to allow you to do it. That&amp;#x27;s not a dig at Akka, or Scala (it&amp;#x27;s an impressive language in its own right), but rather to point out how sometimes we miss the complex capabilities a simple set of abstractions can give us.</text></comment>
<story><title>My favorite Erlang Program (2013)</title><url>http://joearms.github.io/2013/11/21/My-favorite-erlang-program.html</url></story><parent_chain></parent_chain><comment><author>_asummers</author><text>We&amp;#x27;ve been experimenting with Elixir at work, and it&amp;#x27;s been really cool to drop down into the Erlang ecosystem and see how people think when they&amp;#x27;re designing OTP programs, especially when it comes to things like Riak and Mnesia and those sorts of things. My only complaints about this ecosystem is that everything feels scattered in specific places (I&amp;#x27;ve had to read a lot of books, versus being able to read tutorials) and that it&amp;#x27;s very hard to tell an abandoned project from a feature complete project on GitHub. You can generally look at downloads in the Hex package manager for a rough idea of popularity, but then again build servers can inflate unpopular packages. Someone in the Elixir slack joked to me &amp;quot;75 stars? That&amp;#x27;s super popular for Erlang!&amp;quot;. I can deal with it, but I wish it weren&amp;#x27;t so.&lt;p&gt;All that said, I think I&amp;#x27;m going to stick around with these languages. Everything feels very well designed and battle ready, in stark contrast to using JS. Elixir also seems to remove a lot of the cruft and awkward syntax of Erlang, and having Lisp-style macros makes the GenServer boilerplate go away entirely.</text></comment>