Ruby sangat sesuai untuk membina DSL dalaman (Domain-Specific Languages) — API yang dibaca seperti bahasa mini khusus untuk sesuatu domain. Sintaks Ruby yang fleksibel (kurungan pilihan, blok), metaprogramming, dan instance_eval menjadikannya mungkin untuk mencipta DSL yang ekspresif dan mudah dibaca. Inilah sebabnya Rails, RSpec, dan banyak alat Ruby mempunyai API yang elegan dan deklaratif.
Rupa DSL (anda telah melihatnya)
describe
it
expect(user).to be_valid
.application.routes.draw
resources
get ,
gem ,
