Closures with delegates.
Parentheses and dots (.) are optional (command chains).
Ability to add methods to standard classes using Categories and Extension modules.
The ability to override many operators (plus, minus, etc.).
The methodMissing and propertyMissing methods.
Domain-specific languages can be useful for many purposes, such as allowing domain experts to read and write code or to clarify the meaning of business logic. They allow business experts to read or write code without having to be programming experts.