On Friday 06 November 2009 01:28:49 pm Aldric Giacomoni wrote:

> In my limited understanding, it seems that the only thing separating
> Ruby from "true macros" is the ability to ... Define new keywords / new
> syntax ?

New syntax is the main thing.

For example, take Pure:

http://purefunctional.rubyforge.org/

I was slow to grasp this point, but this actually cannot be written with 
traditional blocks -- at least, not easily. The implementation actually parses 
the source as a string.

I'm pretty sure Lisp could do something like this as a macro.