रूबी चमक बनाने वाली चीजों में से एक डोमेन विशिष्ट भाषाओं को बेहतर बनाने की क्षमता है, जैसे
हालांकि कोई भी मैक्रो के माध्यम से इन पुस्तकालयों को एलआईएसपी में डुप्लिकेट कर सकता है, मुझे लगता है कि रूबी का कार्यान्वयन अधिक सुरुचिपूर्ण है। बहरहाल, मुझे लगता है कि ऐसे मामले हैं कि LISP का मैक्रो रूबी से बेहतर हो सकता है, हालांकि मैं एक के बारे में नहीं सोच सकता था।
तो, रूबी की "क्षमता" की तुलना में एलआईएसपी का मैक्रो किस क्षेत्र में बेहतर है ताकि डीएसएल बनाया जा सके?
अद्यतन करें
मैंने यह पूछा है क्योंकि आधुनिक प्रोग्रामिंग लैंग्वेज एलआईएसपी विलक्षणता की ओर आ रही हैं , जैसे
- सी मिल गया मैक्रो विस्तार पूर्वप्रक्रमक , हालांकि बहुत आदिम और त्रुटि होने का खतरा
- C # में विशेषताएं हैं, हालांकि यह केवल पढ़ने के लिए है, प्रतिबिंब के माध्यम से उजागर किया गया है
- पायथन ने डेकोरेटर को जोड़ा, जो फ़ंक्शन के व्यवहार को संशोधित कर सकता है (और v 3.0 के लिए वर्ग), हालांकि काफी सीमित लगता है।
- रूबी TMTOWTDI है कि सुरुचिपूर्ण DSL बनाता है, अगर देखभाल लागू किया जाता है, लेकिन रूबी में।
मैं सोच रहा था कि क्या एलआईएसपी का मैक्रो केवल विशेष मामलों पर लागू होता है और यह कि अन्य प्रोग्रामिंग भाषा की विशेषताएं काफी शक्तिशाली हैं जो सॉफ्टवेयर विकास में आज चुनौतियों का सामना करने के लिए अमूर्तता को बढ़ा सकती हैं।