Rubymacros 0.1.5 Released

rubymacros version 0.1.5 has been released!

RubyMacros is a lisp-like macro pre-processor for Ruby. More than just a

purely textual substitution scheme, RubyMacros can manipulate and morph

Ruby parse trees (in the form of RedParse Nodes) at parse time in just
about

any way you see fit.

Macros are programmed in ruby itself. And since parse trees are
represented

in RedParse format, they’re easier to use (programatically) and more
object-

oriented than other available ruby parsetree formats. (RedParse Node
format

is actually designed to be straightforward to use and to represent the

structure of ruby source code very closely.)

Changes:

0.1.5 / 2009-07-04

  • 4 Major Enhancements:

    • all macros are now immediate, not delayed

    • macro calls can accept blocks

    • macro calls need not be inside a method

    • form escapes can stand in for a method name in callsites

  • 4 Minor Enhancements:

    • macros can expand to nop by returning nil

    • form escapes whose value is a symbol become callsites now

    • forms can now be catenated together with + in the obvious way

    • HashLiteralNode can be treated somewhat like a real hash, using #get

  • http://github.com/coatl/rubymacros/

  • http://rubyforge.org/projects/rubymacros/