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