Ruby soveltuu poikkeuksellisen hyvin sisäisten DSL-kielten (Domain-Specific Languages) rakentamiseen — API-rajapintoihin, jotka lukevat kuin erikoistuneet minikielet jollekin alalle. Rubyn joustava syntaksi (valinnaiset sulkeet, lohkot), metaohjelmointi ja instance_eval tekevät mahdolliseksi luoda ilmaisullisia, luettavia DSL-kieliä. Tämän vuoksi Rails, RSpec ja monet Ruby-työkalut ovat niin tyylikkäitä ja deklaratiivisia.
Miltä DSL näyttää (olet nähnyt ne)
describe
it
expect(user).to be_valid
.application.routes.draw
resources
get ,
gem ,
