Ruby ਅੰਦਰੂਨੀ DSLs (Domain-Specific Languages) ਬਣਾਉਣ ਲਈ ਬਹੁਤ ਹੀ ਢੁਕਵਾਂ ਹੈ — APIs ਜੋ ਇੱਕ ਡੋਮੇਨ ਲਈ ਇੱਕ ਵਿਸ਼ੇਸ਼ ਮਿਨੀ-ਭਾਸ਼ਾ ਵਾਂਗ ਪੜ੍ਹੀਆਂ ਜਾਂਦੀਆਂ ਹਨ। Ruby ਦੀ ਲਚਕਦਾਰ ਸਿੰਟੈਕਸ (ਵਿਕਲਪਿਕ parentheses, blocks), metaprogramming, ਅਤੇ instance_eval ਨਾਲ ਇਹ ਸੰਭਵ ਹੈ ਕਿ ਪ੍ਰਗਟਾਤਮਕ, ਪੜ੍ਹਨਯੋਗ DSLs ਬਣਾਏ ਜਾ ਸਕਣ। ਇਹੀ ਕਾਰਨ ਹੈ ਕਿ Rails, RSpec, ਅਤੇ ਬਹੁਤ ਸਾਰੀਆਂ Ruby ਟੂਲਸ ਦੀਆਂ ਅਜਿਹੀ ਸ਼ਾਨਦਾਰ, ਘੋਸ਼ਣਾਤਮਕ APIs ਹਨ।
DSL ਕਿਵੇਂ ਦਿਖਾਈ ਦਿੰਦਾ ਹੈ (ਤੁਸੀਂ ਉਨ੍ਹਾਂ ਨੂੰ ਦੇਖਿਆ ਹੈ)
describe
it
expect(user).to be_valid
.application.routes.draw
resources
get ,
gem ,
