stephenmcd/two-queues — pull request #2 by webcoyote (2013-03-05 05:33:45+00:00)
Title: Add support for Elixir language to benchmark code

Hello Stephen,

This pull request includes support for Elixir, a Ruby-like language built on the Erlang BEAM virtual machine.

![two-queues-elixir](https://f.cloud.github.com/assets/970958/220015/e4f283be-8554-11e2-8081-cbe697262caf.png)

I hugely enjoyed your two-queues article. I discovered a lot of new knowledge by reading both the article and code. Until now I hadn't written any Python, Go, *or* Elixir, so this was a great learning project for all three languages.

The Elixir code is not complete ("--host" not implemented), and I don't support "channels" the same way your code does as actors and channels solve the problem a bit differently (and I'm still learning Elixir). But I thought you might be interested anyway.

It's also only tested on CentOS at present, and the helper scripts I added to install the pre-reqs may need tweaking on OSX.

Please don't feel any need to integrate these changes -- I expect it would make the article and code *less* useful for readers because they'll have to get Elixir/Erlang working too. I just wanted to share because the code was fun to write and might be valuable to others.

Oh, and finally, in some ways the Elixir code isn't a fair comparison because it isn't sending the messages over sockets, though that aspect of Erlang/BEAM is a reason that it's compelling to use for server development.

Best,

Pat
blog: [Code of Honor](http://www.codeofhonor.com/blog)