सेवा के बारे में
अनुवादितमैं फैक्टर में प्रोग्राम लिखता हूँ—एक आधुनिक स्टैक-आधारित संयोजक भाषा—और मैं ऐसा जानबूझकर करता हूँ, न कि आकस्मिक रूप से। मेरा अधिकांश काम मुख्यधारा से बाहर है: मैं कमांड-लाइन उपयोगिताएँ, डेटा प्रोसेसिंग पाइपलाइन्स, कोड जनरेटर, और छोटे स्वचालन उपकरण बनाता हूँ जहाँ संयोजक शैली वास्तव में चमकती है। मध्यवर्ती चर के लिए नाम आविष्कार करने के बजाय, मैं शब्दों को संयोजित करता हूँ जो स्टैक के माध्यम से मानों को धकेलते हैं, तर्क को छोटे पुन: प्रयोज्य टुकड़ों में तोड़ते हैं, और प्रत्येक परिभाषा को इतना संक्षिप्त रखते हैं कि मैं इसे अपने दिमाग में रख सकूँ। ऐसी अनुशासन कोड उत्पन्न करती है जो क्रियाओं के अनुक्रम की तरह पढ़ी जाती है और पुनः कार्य करने के लिए आसानी से तैयार होती है: एक संयोजक भाषा में, एक वाक्यांश को एक अलग शब्द में निकालना लगभग कुछ भी नहीं खर्च करता है।
मेरा अनुभव संयोजक और स्टैक-आधारित मशीनों की पूरी दुनिया में फैला हुआ है, न कि केवल एक कार्यान्वयन में। मैं फॉर्थ-जैसे दृष्टिकोणों, पोस्टफिक्स मूल्यांकन, उद्धरणों, और संयोजकों के साथ घर पर हूँ, और मैं छोटे डोमेन-विशिष्ट भाषाएँ डिजाइन करना पसंद करता हूँ जो एक गैर-प्रोग्रामर को कुछ अच्छी तरह से चुने गए शब्दों के साथ इरादा व्यक्त करने देती हैं। जब एक ग्राहक के पास पहले से एक कार्यशील विचार होता है लेकिन इसे व्यक्त करने का कोई साफ तरीका नहीं होता, तो मैं डोमेन को एक शब्दकोश के रूप में मॉडल करता हूँ, इसे अंतर्निहित प्रणाली से जोड़ता हूँ, और कुछ ऐसा प्रदान करता हूँ जो एक प्रोग्राम और एक पठनीय विनिर्देशन दोनों है। परीक्षण मेरे लिए भी महत्वपूर्ण है: फैक्टर का इंटरैक्टिव श्रोता और मॉड्यूलर परीक्षण आपको धीरे-धीरे एक समाधान विकसित करने और इसे ईमानदार रखने की अनुमति देते हैं क्योंकि यह बदलता है।
यदि आपके पास एक संकीर्ण स्वचालन कार्य, एक पार्सर, एक इंटरप्रेटर प्रोटोटाइप है, या आप बस यह जानना चाहते हैं कि क्या एक संयोजक दृष्टिकोण आपकी समस्या के लिए उपयुक्त है, तो मैं परामर्श करने के लिए विशेषज्ञ हूँ। मैं यह स्पष्ट रूप से बताऊँगा कि फैक्टर कहाँ फिट बैठता है और कहाँ नहीं, जो किया गया है उसका दस्तावेजीकरण करूँगा, और कोड छोड़ूँगा जिसे एक अन्य डेवलपर उठा सकता है।
— फैक्टर में उपकरण, स्क्रिप्ट, और कमांड-लाइन उपयोगिताएँ
— स्टैक-आधारित मॉडल पर फॉर्थ-जैसे और पोस्टफिक्स समाधान
— छोटे डोमेन-विशिष्ट और एम्बेडेड मिनी-भाषाएँ
— डेटा पाइपलाइन्स, कोड जनरेशन, और पाठ प्रसंस्करण
— संयोजकों और उद्धरणों के माध्यम से कोड पुनर्गठन
— इंटरप्रेटर प्रोटोटाइप, पार्सर, और REPL प्रयोग
मेरा अनुभव संयोजक और स्टैक-आधारित मशीनों की पूरी दुनिया में फैला हुआ है, न कि केवल एक कार्यान्वयन में। मैं फॉर्थ-जैसे दृष्टिकोणों, पोस्टफिक्स मूल्यांकन, उद्धरणों, और संयोजकों के साथ घर पर हूँ, और मैं छोटे डोमेन-विशिष्ट भाषाएँ डिजाइन करना पसंद करता हूँ जो एक गैर-प्रोग्रामर को कुछ अच्छी तरह से चुने गए शब्दों के साथ इरादा व्यक्त करने देती हैं। जब एक ग्राहक के पास पहले से एक कार्यशील विचार होता है लेकिन इसे व्यक्त करने का कोई साफ तरीका नहीं होता, तो मैं डोमेन को एक शब्दकोश के रूप में मॉडल करता हूँ, इसे अंतर्निहित प्रणाली से जोड़ता हूँ, और कुछ ऐसा प्रदान करता हूँ जो एक प्रोग्राम और एक पठनीय विनिर्देशन दोनों है। परीक्षण मेरे लिए भी महत्वपूर्ण है: फैक्टर का इंटरैक्टिव श्रोता और मॉड्यूलर परीक्षण आपको धीरे-धीरे एक समाधान विकसित करने और इसे ईमानदार रखने की अनुमति देते हैं क्योंकि यह बदलता है।
यदि आपके पास एक संकीर्ण स्वचालन कार्य, एक पार्सर, एक इंटरप्रेटर प्रोटोटाइप है, या आप बस यह जानना चाहते हैं कि क्या एक संयोजक दृष्टिकोण आपकी समस्या के लिए उपयुक्त है, तो मैं परामर्श करने के लिए विशेषज्ञ हूँ। मैं यह स्पष्ट रूप से बताऊँगा कि फैक्टर कहाँ फिट बैठता है और कहाँ नहीं, जो किया गया है उसका दस्तावेजीकरण करूँगा, और कोड छोड़ूँगा जिसे एक अन्य डेवलपर उठा सकता है।
— फैक्टर में उपकरण, स्क्रिप्ट, और कमांड-लाइन उपयोगिताएँ
— स्टैक-आधारित मॉडल पर फॉर्थ-जैसे और पोस्टफिक्स समाधान
— छोटे डोमेन-विशिष्ट और एम्बेडेड मिनी-भाषाएँ
— डेटा पाइपलाइन्स, कोड जनरेशन, और पाठ प्रसंस्करण
— संयोजकों और उद्धरणों के माध्यम से कोड पुनर्गठन
— इंटरप्रेटर प्रोटोटाइप, पार्सर, और REPL प्रयोग