Being a full-stack framework means that all layers are built to work
seamlessly together. That way you Don't Repeat Yourself (DRY) and you
can use a single language from top to bottom. Everything from templates
to control flow to business logic is written in Ruby-the language of
love for industry heavy-weights.
In striving for DRY compliance, Rails shuns configuration files and
annotations in favor of reflection and run-time extensions.
This means the end of XML files telling a story that has already been
told in code. It means no compilation phase: Make a change, see it
work. Meta-data is an implementation detail left for the framework to
handle.
For more: