On Wed, 25 Jul 2001, Todd Gillespie wrote:

> LISP macros offer an elegant way to dynamically redefine the
> language.  Their viability may be a consequence of the uniformity of LISP
> syntax
<snip>
> This is basically impossible (in terms of economic time usage) in a
> language with syntax less regular than LISP, like C, Ruby, Algol spawn,
> etc.

The exception here is Dylan, which manages to have a hygenic, easy to use,
and powerful macro system (like LISP, most of Dylan's syntax is built up
by macros from a very few special forms), as well as a familiar, infix
syntax.  I'm sure it's a pain to write a Dylan compiler, but you only have
to do it once and it makes life a lot easier for us prefix-wary Blub
programmers.  It would be interesting to see similar techniques brought to
other infix languages. I know of at least one attempt to bring them to
Java - anyone working on hygenic macros for Ruby?