Keynote: You got your Erlang in my Ruby

By Erlang Central | Published: April 27, 2009

With functional style, message passing concurrency primitives baked in
and the power of OTP for building fault tolerant applications, Erlang
is the best in breed programming environment for making horizontally
scalable network servers.

With a clean object model and beautiful, concise syntax, Ruby is
one of the most productive and expressive dynamic languages available
right now.
Both of these platforms have great strengthsand weaknesses. Erlang
syntax is bizaar for most programmers and String and IO handling are
fairly primitive. Ruby has some scalability limits like 1024 open
sockets or file descriptors and no true concurrency, only green threads.

In this talk we will explore a melding of the two called Nanite.
Nanite is a framework where you write ‘agents’ in Ruby and use
RabbitMQ (Erlang) as a messaging bus/hub. We can exploit the power of
Erlang’s message passing and scalability to distribute the work our to
Ruby ‘Nanites’ that implement functionality. This ends up looking like
an exploded Erlang VM where the actors are implemented as Ruby
processes with Erlangin the middle holding everything together. With
this powerful combination we get to play to the strengths of each
language to build a hive mind of interconnected processing power.

Download Presentation Download


  • Ezra Zygmuntowicz

    Engine Yard co-founder and Ruby guru
    Engine Yard Inc.

    Ezra Zygmuntowicz, is a lead contributor to the Merb framework and is a co-founder of, a scalable Rails hosting service. He is the author of the Rails Deployment book for the Pragmatic programmers and has contributed many open source Ruby and Rails related projects.

    Ezra Zygmuntowicz

Follow Erlang Central:

Have an Erlang Question?

Reach out to the Erlang community