Ruby is Highly Dynamic
Uses dynamic typing (vs. static)
Full support for introspection
Support for method redefinition
Create your own domain-specific languages
Modules vs. multiple inheritance
method_missing
, etc...