रोसलिन (संकलक)

.एनईटी कम्पाइलर प्लेटफॉर्म, जिसे इसके कोडनेम रॉसलिन से भी जाना जाता है, C# और माइक्रोसॉफ्ट की विजुअल बेसिक (.एनईटी) (वीबी.एनईटी) भाषाओं के लिए विवृत-सोर्स संकलक और कोड विश्लेषण एपीआई का एक सम्मुच्चय है।

परियोजना में विशेष रूप से स्व-होस्टिंग (संकलक) संकलनकर्ता) सम्मिलित हैं। C# और वीबी.एनईटी संकलनकर्ता्स के सेल्फ-होस्टिंग संस्करण - स्वयं भाषाओं में लिखे गए संकलनकर्ता। संकलनकर्ता पारंपरिक कमांड-लाइन प्रोग्राम के माध्यम से उपलब्ध हैं, लेकिन एपीआई के रूप में भी .एनईटी कोड के भीतर मूल रूप से उपलब्ध हैं। रोसलिन कोड के सिंटैक्टिक ( शाब्दिक विश्लेषण ) विश्लेषण, सिमेंटिक एनालिसिस, सामान्य मध्यवर्ती भाषा के गतिशील संकलन और कोड एमिशन के लिए अनुखंड को उजागर करता है।

विशेषताएं
रोज़लिन की विशेषताओं में सम्मिलित हैं:
 * सी शार्प (प्रोग्रामिंग लैंग्वेज) के लिए संकलनकर्ता और विजुअल बेसिक (.एनईटी) भाषाओं को एपीआई के माध्यम से सेवाओं के रूप में उजागर किया गया।
 * कोड विश्लेषण और पुनर्रचना के लिए एपीआई।

इतिहास
रोसलिन का कोड नाम सबसे पहले एरिक लिपर्ट (एक पूर्व माइक्रोसॉफ्ट इंजीनियर) द्वारा लिखा गया था जिसे उन्होंने 2010 में एक नई परियोजना के लिए विकासक को नियुक्त करने के लिए प्रकाशित किया था। उन्होंने पहले कहा कि नाम की उत्पत्ति रोसलिन, वाशिंगटन के कारण हुई थी, लेकिन बाद में पोस्ट में उन्होंने अपने कार्यालय के उत्तरी प्रदर्शन के बारे में विडंबना की बात की; रोसलिन शहर उन जगहों में से एक था जहां टेलीविजन श्रृंखला नॉर्दर्न एक्सपोज़र को फिल्माया गया था।

माइक्रोसॉफ्ट ने अक्टूबर 2011 में सामुदायिक प्रौद्योगिकी पूर्वावलोकन (सीटीपी) को सार्वजनिक डाउनलोड के लिए उपलब्ध कराया। इसे विजुअल स्टूडियो 2010 एसपी1 के विस्तार के रूप में स्थापित किया गया।

सीटीपी को सितंबर 2012 में अद्यतन किया गया था जून 2012 और अक्टूबर 2011 में प्रस्तुत किए गए रोसलिन एपीआई में कई अद्यतन सम्मिलित करने के लिए सीटीपी, जिसमें :wikt:ब्रेकिंग चेंज भी सम्मिलित है। जबकि जून 2012 सीटीपी एपीआई संकलनकर्ता्स के लिए पूर्ण है, C # और वीबी.नेट भाषाओं के लिए सभी सुविधाओं को लागू नहीं किया गया था।

अप्रैल 2014 में सैन फ्रांसिस्को में बिल्ड (विकासक सम्मेलन) सम्मेलन में, माइक्रोसॉफ्ट ने रोसलिन प्रोजेक्ट को विवृत-सोर्स बनाया और विजुअल स्टूडियो 2013 के लिए भाषा एकीकरण का पूर्वावलोकन जारी किया। 3 अप्रैल 2014 तक, रोसलिन अपाचे लाइसेंस 2.0 के अंतर्गत है। परियोजना को नए विसुअल बेसिक.एनईटी फाउंडेशन के नेतृत्व में प्रभावी रूप से स्थानांतरित किया गया था। उसी सम्मेलन में, ज़ामरीन ने घोषणा की कि वे ज़ामरीन स्टूडियो में नए संकलनकर्ता और साधन को एकीकृत करने पर काम कर रहे हैं।

इस रिलीज में संकलनकर्ता फीचर-पूर्ण नहीं थे। प्रत्येक संकलनकर्ता में ऐसी विशेषताएं हैं जो आने वाले भाषा संस्करणों (C# 6 और विसुअल बेसिक.एनईटी 14) के लिए नियोजित हैं। एपीआई नुगेट पैकेज मैनेजर के माध्यम से भी उपलब्ध हैं।

रोज़लिन का पहला सॉफ़्टवेयर रिलीज़ जीवन चक्र रिलीज़ टू मैन्युफैक्चरिंग (आरटीएम) विजुअल स्टूडियो 2015 के साथ था। रॉसलिन वर्तमान में केवल वीबी और C# का समर्थन करता है, और संकलक उनकी संबंधित भाषाओं में लिखे गए थे।

जनवरी 2015 में, माइक्रोसॉफ्ट ने रॉसलिन स्रोत कोड को कोडप्लेक्स से गिटहब में स्थानांतरित कर दिया।

शिल्प विद्या
परंपरागत रूप से .एनईटी संकलनकर्ता एप्लिकेशन विकासक के लिए एक ब्लैक बॉक्स रहे हैं। आधुनिक एकीकृत विकास वातावरण में स्रोत कोड विश्लेषण की बढ़ती जटिलता और मांगों के साथ, हालांकि, संकलनकर्ता को अप्लिकेशन प्रोग्रामिंग अंतरफलक (एपीआई) को उजागर करने की आवश्यकता है जो विकासक को स्रोत कोड के शाब्दिक और वाक्यात्मक संरचना विश्लेषण जैसे संकलन के चरणों को सीधे करने में मदद करेगा। रोजलिन को प्रारम्भ से ही इसी उद्देश्य से अभिकल्पित किया गया था। यह विशेष रूप से स्रोत कोड विश्लेषण के लिए अभिकल्पित किए गए उपकरणों के विकास में बाधा को कम करता है। रोसलिन के एपीआई तीन प्रकार के होते हैं: फीचर एपीआई, वर्क-स्पेस एपीआई और संकलनकर्ता एपीआई। फ़ीचर एपीआई स्रोत कोड उपकरण विकासक को कोड रीफैक्टरिंग और फिक्स करने की अनुमति देते हैं। वर्क-स्पेस एपीआई प्लगइन विकासक को विशेष रूप से एकीकृत विकास वातावरण (आईडीई) जैसे विजुअल स्टूडियो जैसे एक चर या कोड स्वरूपण के संदर्भों को खोजने के लिए आवश्यक कार्य करने की अनुमति देता है। संकलनकर्ता एपीआई सिंटैक्स ट्री और बाइंडिंग फ्लो विश्लेषण करने के लिए प्रत्यक्ष कॉल को उजागर करके स्रोत कोड के और भी अधिक परिष्कृत विश्लेषण की अनुमति देते हैं। सामान्य भाषा अवसंरचना (सीएलआई) जैसे .एनईटी कोर के विवृत-सोर्स कार्यान्वयन का उपयोग करते हुए, रोसलिन लिनक्स, ओएस एक्स और विंडो में सीएलआई कोड चलाने में सक्षम प्लेटफॉर्म-एग्नोस्टिक तरीके से संकलन करने में सक्षम होगा।

यह भी देखें

 * संकलनकर्ता्स की सूची
 * माइक्रोसॉफ्ट फीनिक्स

बाहरी संबंध

 * Introducing the माइक्रोसॉफ्ट “रॉसलिन” सीटीपी on the C# Frequently Asked Questions MSDN blog
 * Throwing the Big Switch on रॉसलिन on the C# Frequently Asked Questions MSDN blog
 * Throwing the Big Switch on रॉसलिन on the C# Frequently Asked Questions MSDN blog