Ruby આંતરિક DSL (ડોમેન-સ્પેસિફિક લેંગ્વેજ) બનાવવા માટે અસાધારણ રીતે યોગ્ય છે — એવા API જે ડોમેન માટે વિશેષાધિકૃત મિની-લેંગ્વેજ જેવા વાંચાય છે। Ruby ની લવચક સિન્ટેક્સ (વૈકલ્પિક કૌંસ, બ્લોક), મેટાપ્રોગ્રામિંગ, અને instance_eval અભિવ્યક્તિશીલ, વાંચનીય DSL બનાવવાનું શક્ય બનાવે છે. આ જ કારણે Rails, RSpec, અને ઘણી Ruby સાધનોમાં આવા સુંદર, ઘોષણાત્મક API છે.
DSL કેવો લાગે છે (તમે તેને જોયું છે)
describe
it
expect(user).to be_valid
.application.routes.draw
resources
get ,
gem ,
