Lisp-style Macros for Ruby
github.com
github.com
But still, it's inevitable that anything remotely lisp-like will get sucked into Lisp's black hole.
http://blogs.sun.com/jag/entry/the_black_hole_theory_of
Another way to put it is that Lisp might be a local maximum: It may not be the globally optimum language for a particular problem, but once you approach Lisp you find that improving your language requires either becoming more Lisp-like or making a huge leap away from Lisp (C, ML, Haskell, Smalltalk, Erlang, &c.)
But I digress. I guess he did start with Lisp and remove macros :-)
I'm pretty sure writing an interpreter is pretty complicated as well.
Interpreters exist in dozens. In the Lisp community it is a sport to write those. Scheme has more than a hundred implementations. Many of them are much more ambitious than Ruby.
The Ruby implementation technique is not very advanced - it is a very simple interpreter, hacked together. The Ruby language may be convenient to use for scripting, but from a language implementation standpoint it is far away from the state of the art. It shows. The Ruby implementation is about the slowest language implementation out there.
There are dozens of Lisp implementations that are much more advanced, include compilers, etc..
Sure, Ruby is simpler and its implementation is simpler - that's part of the reason of its success.
Seemed an odd argument from someone who defends other "dangerous" language features (e.g open classes) by simply saying that Ruby is a sharp knife and you just need to be careful with your tools.