खाका metaprogramming अनिवार्य रूप से टेम्पलेट तंत्र का दुरुपयोग है। मेरा मतलब यह है कि आप मूल रूप से एक ऐसी सुविधा से अपेक्षा करते हैं जो एक अनियोजित पक्ष प्रभाव था --- यह एक गड़बड़ है, और (हालांकि उपकरण बेहतर हो रहे हैं) गधे में असली दर्द क्योंकि भाषा नहीं है ऐसा करने में आपको समर्थन (मुझे ध्यान रखना चाहिए कि इस पर अत्याधुनिक के साथ मेरा अनुभव पुराना है, क्योंकि मैंने अनिवार्य रूप से दृष्टिकोण पर छोड़ दिया है। मैंने किसी भी महान कदम के बारे में नहीं सुना है, हालांकि)
'98 के बारे में इस बारे में चारों ओर घूमने से मुझे बेहतर समाधान देखने के लिए प्रेरित किया गया था। मैं उपयोगी सिस्टम लिख सकता था जो उस पर भरोसा करते थे, लेकिन वे नरक थे। अंततः पोकिंग ने मुझे आम लिस्प के लिए नेतृत्व किया। निश्चित रूप से, टेम्पलेट तंत्र पूर्ण ट्यूरिंग है, लेकिन फिर फिर इंटरकॉल है।
आम लिस्प मेट्रोग्रामिंग 'दाएं' करता है। जब आप इसे करते हैं, तो कोई विशेष वाक्यविन्यास नहीं है, और क्योंकि भाषा बहुत गतिशील है, इसलिए आप इसके साथ और अधिक कर सकते हैं।
पाठ्यक्रम के अन्य विकल्प भी हैं। मैंने उपयोग की कोई अन्य भाषा लिस्प की तुलना में मेटाप्रोग्रामिंग बेहतर नहीं है, इसलिए मैं इसे शोध कोड के लिए उपयोग करता हूं। यद्यपि आप कुछ और कोशिश कर सकते हैं, हालांकि कुछ कारण हैं, लेकिन यह सब ट्रेडऑफ होने जा रहा है। आप हास्केल/एमएल/ओकैम आदि देख सकते हैं। कई कार्यात्मक भाषाओं में लिस्प मैक्रोज़ की शक्ति के करीब कुछ है। आप कुछ .NET लक्षित सामग्री पा सकते हैं, लेकिन वे सभी बहुत ही मामूली हैं (उपयोगकर्ता आधार आदि के मामले में)। औद्योगिक रूप से उपयोग की जाने वाली भाषाओं में से किसी भी बड़े खिलाड़ी के पास ऐसा कुछ भी नहीं है, वास्तव में।
मैंने पहले स्टैक ओवरफ्लो मॉडरेशन के बारे में शिकायत की है, लेकिन मुझे यहां बचना चाहिए, और केवल एक अवलोकन को इंगित करें ... क्या आप यहां "बहस, तर्क, मतदान या विस्तारित चर्चा" का अधिभार देखते हैं? अगर हम यही डरते हैं, तो आइए आकलन करें कि इस प्रश्न के जवाब में कितना बुरा है। यदि, एक भयंकर जेरी स्प्रिंगर एपिसोड के बजाय, हम बुद्धिमान, मूल्यवान जानकारी को सम्मानपूर्वक और सराहना करते हुए देखते हैं, तो शायद हमें प्रश्न खोलना चाहिए। अन्यथा, हम उन समस्याओं के बारे में बहुत ज्यादा चिंता कर रहे हैं जिनके पास हमारे पास भी नहीं है। –
मैंने "सर्वश्रेष्ठ" के अनुरोधों को हटाने के लिए इस प्रश्न को संपादित किया है। कृपया फिर से खोलने पर विचार करें। बीटीडब्ल्यू: यह इस सवाल के जवाब के माध्यम से था कि मैंने पहले क्लोजर के बारे में सुना था। तो यह मेरे लिए रचनात्मक था। उन लोगों के लिए धन्यवाद जिन्होंने उत्तर दिया और टिप्पणी की! – jwfearn