सी #, वीबी.नेट, सी ++ (प्रबंधित और सी ++/सीएलआई), और एफ # के अलावा, जो .NET प्रोग्रामिंग भाषाओं का अपना कोडडॉम प्रदाता है?कौन सी .NET प्रोग्रामिंग भाषाएं कोडडॉम प्रदाता है?
उत्तर
मैंने अवास्तविक स्क्रिप्ट के लिए एक बनाने के बारे में सोचा, लेकिन मैं इस तथ्य की तरह अजीब मुद्दों में भाग गया कि CodeBinaryOperatorType में एक विशेष या ऑपरेशन शामिल नहीं है। .NET 4 में नए अभिव्यक्ति पेड़ अधिक की तरह दिखते हैं कि कोडडॉम को ब्लॉक स्तर पर क्या पेशकश की जानी चाहिए (जैसे कि फ़ंक्शन बॉडी बनाने वाले बयानों के ब्लॉक में)।
मुझे लगता है कि हमें एक नया कोडडॉम चाहिए जो System.CodeDom के बाहरी भाग लेता है और System.Linq.Expressions के आंतरिक उपयोग करता है। फिर परिणाम को आउटपुट के रूप में या तो एक गतिशील असेंबली या स्रोत कोड उत्पन्न करने में सक्षम बनाते हैं। (अब जब मैं इसके बारे में सोचता हूं, एक संकलित असेंबली का उत्पादन वास्तव में आउटपुट स्रोत के लिए एक नई "भाषा" बनाने जैसा ही होगा।)
संपादित करें: इसके शीर्ष पर, आपको CodeModel API को लागू करने पर भी विचार करना होगा , क्योंकि अक्सर कोडडॉम लागू किया जाता है क्योंकि कोई विजुअल स्टूडियो में एक नई भाषा को एकीकृत कर रहा है।
आखिरी Lang.NET संगोष्ठी के दौरान भाषा रचनाकारों में से एक ने इसी तरह के बारे में शिकायत की और माइक्रोसॉफ्ट इंजीनियर ने जवाब दिया (केवल आधा मजाक कर रहा है): "कोडडॉम किसी भी भाषा का प्रतिनिधित्व तब तक कर सकता है जब तक यह सी # है।" उन्होंने मूल रूप से स्वीकार किया कि कोडडॉम एक विफलता है और अभिव्यक्ति पेड़ (या बल्कि "वक्तव्य" पेड़) आगे बढ़ रहे हैं। –
@ JörgWMittag: अभिव्यक्ति पेड़ का उपयोग पूरे वर्ग के लिए स्रोत कोड उत्पन्न करने के लिए किया जा सकता है? –
यह विकी क्यों है? –
एफ # एक प्रदाता है? –