= Melbourne Melbourne is Rubinius[http://rubini.us]' parser component. The +melbourne+ gem extracts this parser component for stand-alone use under MRI and other environments. For Melbourne's full RDoc, see {rdoc.info}[http://rdoc.info/projects/marcoow/melbourne]. == Usage Melbourne generates abstract syntax trees (ASTs) from Ruby source code: require 'melbourne' 'class Test; end'.to_ast # => , @name=#, @name=:Test>, @superclass=#> == Abstract Syntax Trees Abstract syntax trees allow for deep introspection of Ruby source code and are far easier to handle than e.g. S-expressions as provided by ParseTree[http://parsetree.rubyforge.org/] and other gems. For more information on abstract syntax trees, see Wikipedia[http://en.wikipedia.org/wiki/Abstract_syntax_trees]. == Authors The original code of Melbourne is part of the {Rubinius project}[http://rubini.us/] and was written by and is © Evan Phoenix[http://github.com/evanphx/]. Melbourne was extracted from Rubinius into this gem by Marco Otte-Witte[http://simplabs.com]. == Bugs/ Feature Requests the +melbourne+ gem is not maintained by the Rubinius[http://rubini.us] team! If you encounter bugs or have feature requests, refer to the {Github repository}[http://github.com/marcoow/melbourne/issues].