सेवा के बारे में
अनुवादितमैं एक इंजीनियर हूँ जिसने Nemerle का उपयोग करते हुए वर्षों बिताए हैं — डॉटनेट CLR प्लेटफ़ॉर्म पर एक हाइब्रिड फ़ंक्शनल-ऑब्जेक्ट भाषा — उन कार्यों के लिए जहाँ सामान्य C# ढेर सारा बायलरप्लेट कोड उत्पन्न करता है। यदि आपके पास एक जटिल समस्या है जिसे संक्षेप में व्यक्त करना कठिन है, तो Nemerle का मैक्रो सिस्टम लगभग हमेशा एक उत्तर प्रदान करता है, और मुझे इसका उपयोग करना आता है। यहाँ मैं वास्तव में क्या करता हूँ। पहले, संकलन समय पर कोड जनरेशन: मेरे मैक्रोज़ प्रोग्राम चलने से पहले सख्ती से टाइप किए गए कोड में खुलते हैं, इसलिए आप रनटाइम पर रिफ्लेक्शन के लिए भुगतान नहीं करते और पूर्ण प्रकार की जांच प्राप्त करते हैं। दूसरे, एम्बेडेड DSLs: मैं छोटे भाषाएँ डिजाइन करता हूँ जो आपकी समस्या के क्षेत्र की तरह पढ़ती हैं, इसलिए आपकी टीम समझने योग्य सिंटैक्स में नियमों का वर्णन करती है जो सीधे CLR बाइटकोड में संकलित होता है। तीसरे, विरासत डॉटनेट के साथ एकीकरण: चूंकि Nemerle CLR पर स्वाभाविक रूप से रहता है, मैं इसे आपके C# या F# असेंबली से बिना इंटरऑप दर्द के जोड़ता हूँ, पुराने पुस्तकालयों को साफ़ फ़ंक्शनल इंटरफेस में लपेटता हूँ। मैं पैटर्न मिलान, बीजगणितीय प्रकार और अपरिवर्तनीय संरचनाओं को सामान्य OOP कक्षाओं के साथ जोड़ता हूँ जहाँ यह अधिक उपयुक्त होता है, प्रत्येक विशिष्ट मॉड्यूल के लिए पैरेडाइम चुनता हूँ बजाय इसके कि हर जगह एक ही शैली थोपूँ। सामान्य परियोजनाएँ: सैकड़ों समान DTO मैपर को एकल जनरेटिंग मैक्रो के साथ बदलना, एक मान्यता DSL बनाना जो संकलन समय पर त्रुटियों को पकड़ता है, या एक उलझे हुए डॉटनेट मोनोलिथ का चरणबद्ध आधुनिकीकरण। आप दस्तावेजीकृत स्रोत कोड, यूनिट परीक्षणों का एक सूट, निर्माण स्क्रिप्ट और एक संक्षिप्त गाइड प्राप्त करते हैं ताकि आपके डेवलपर्स हैंडऑफ़ के बाद मैक्रोज़ को बनाए रख सकें। मैं पठनीय कोड लिखता हूँ, हर मेटाप्रोग्रामिंग तकनीक को समझाता हूँ और कभी भी एक काला बॉक्स पीछे नहीं छोड़ता। मुझे अपने कोडबेस और इसके दर्द बिंदुओं के बारे में बताएं — मैं इसे समाप्त करने के लिए न्यूनतम Nemerle हस्तक्षेप का प्रस्ताव दूंगा।