New Ruby Implementation - RBXML

Ruby is a wonderful language, but its syntax has some shortcomings.
Inspired by Perl, the syntax of Ruby requires many special cases and
is difficult to parse by anything but a full Ruby interpreter. We seek
to fix this issue with a new, unambiguous syntax for Ruby: RBXML.

“Business Reporting and XML go hand in hand. I plan to convert Ruport
to RBXML as soon as I can!”
– Gregory B., Ruby Reports maintainer

<http://www.bradediger.com/blog/2008/04/a_modest_syntax_proposal_rbxml.html

http://tinyurl.com/23elz5

===========

Consider the following Ruby code. While it is certainly concise, it
achieves this goal through use of obscure symbols such as . and |.
This makes it difficult to read, and more importantly, difficult to
parse by machine.

class Integer
def factorial
(1…self).inject(1) {|p, x| p*x}
end
end

Rubyists talk a lot about metaprogramming, but how are you supposed to
introspect on a language like that? Some projects try to work around
these limitations by letting Ruby code introspect on itself; however,
the result can be unwieldy. Why reinvent the wheel when XML has been
around for years? Consider the much more regular and understandable
syntax in RBXML:

inject 1 self 1 * p x

Just as languages in the Lisp family represent their parse trees with
s-expressions, this regular syntax represents the parse tree directly,
with only a small bit of XML parsing. Rubyists now have the advantage
of not having an extra layer of syntax between them and their concepts.

===========

To read more, visit:

<http://www.bradediger.com/blog/2008/04/a_modest_syntax_proposal_rbxml.html

http://tinyurl.com/23elz5

===========

Brad E.
[email protected]