Hello Shay,

Typically XML gets to be a pain when it goes from being configuration to a mini language. The classic example is an Ant/Nant build. The build.xml looks real cute and readable as long as you're doing the standard compile -> unit-test -> functional-test -> package flow on a toy project. Once you're on real-world project with a large codebase of several thousand classes and multistage/pipelined builds, then that XML rapidly becomes brittle, hard to change and hard to maintain.

If you examine the history of Ant/Nant, you'll notice that over time (due to popular demand) language constructs like branching have been added changing the build config from a configuration to a mini DSL. But this does not remove the basic problem - that one cannot trivially refactor a build config that contains logic (and is thus no longer a config) to extract abstractions and keep things civilized.

The Ruby contrast to this is Rake (not YAML directly - YAML as pure configuration has no real advantage over XML that I've seen beyond being more human readable). Rake builds pwn. Seriously. I know I've said this before on this list, but I love Rake, so I'll say it again - all .Net and Java builds should be moved off Ant/Maven/Nant to Rake. It has none of the limitations of an xml based build config. You can reafctor it. You can even write tests for it, should you need to. I've seen it done, and it works really well.

Is that fair example?

Cheers,
Sidu.
http://blog.sidu.in
http://twitter.com/ponnappa

Shay Friedman wrote:
Hi there,

Jimmy wrote in one of his latests posts that Ruby can replace XML. I didn't understand this statement because XML files are static configuration files (and Ruby also has an equivalent - YAML)...
How can Ruby code replace XML files?

Thanks!
Shay.

--
--------------------------------------------------
Shay Friedman
Author of IronRuby Unleashed
http://www.IronShay.com
Follow me: http://twitter.com/ironshay
------------------------------------------------------------------------

_______________________________________________
Ironruby-core mailing list
Ironruby-core@rubyforge.org
http://rubyforge.org/mailman/listinfo/ironruby-core
_______________________________________________
Ironruby-core mailing list
Ironruby-core@rubyforge.org
http://rubyforge.org/mailman/listinfo/ironruby-core

Reply via email to