I am also beginning to really enjoy Erlang's approach to parallelism
and wishing I could do cool stuff like that in Ruby as easily
Me, too. That was the impetus for dramatis (http://dramatis.mischance.net; actor concurrency for ruby and python; early but always looking for feedback.)
Apropos of the overall thread, I completing the port of dramatis to python and the metaprogramming is pretty different. Python uses metaclasses and doesn have the callbacks that ruby does. There overlap in the feature set, but they don provide exactly the same features.
More importantly, object dereference, e.g., .b is very different. It”Ēs difficult to do proxy objects in python, for example, rpc stubs, because it requires accessing the object to know whether a.b is calling a function (if b is a property) or simply binding a method pointer (if b is a normal instance method).