In article <9jfvq1$ac4$1 / geraldo.cc.utexas.edu>, "Todd Gillespie" <toddg / linux127.ma.utexas.edu> wrote: > It would behoove you to read the second half of Paul Graham's recent > paper 'Beating the Averages', at http://www.paulgraham.com/avg.html. In > a nutshell, programmers that have not understood a particular facility > in a language are likely to treat it as unimportant, because they know > how to think about programs using the idioms of the languages they > already know, but not in these unfamiliar features. To quote: That's an interesting article. I hope Paul doesn't strain his neck looking up to Ruby :-). Seriously, though, he mentions as one of the big features they used in their development was the ability to define macros. Not knowing anything much about LISP, I was wondering whether you can tell me whether ruby's eval (perhaps along with otherruby features) can be used to achieve the same functionality as LISP's macros, or are they more complex beasts than that? Ie, do they provide something we're missing out on?