Google Apps Script:
एक इंटरैक्टिव शैल (REPL) का उपयोग करना
कैसे:
Google Apps Script, Google उत्पादों में टास्क को स्वचालित करने के लिए एक क्लाउड-आधारित स्क्रिप्टिंग भाषा, के पास Python या JavaScript के Node.js जैसी भाषाओं के समान एक निर्मित REPL टूल नहीं है। हालांकि, आप Apps Script संपादक की लॉगिंग और डिबगिंग सुविधाओं का उपयोग करके या बाहरी वातावरण की स्थापना करके इसी तरह का अनुभव अनुकरण कर सकते हैं। यहां, हम Apps Script संपादक के भीतर एक आवश्यक REPL बनाने पर केंद्रित हैं।
- एक आवश्यक REPL फंक्शन बनाना:
function myREPL() {
var input = Logger.log('Enter your expression: ');
try {
var result = eval(input);
Logger.log('Result: ' + result);
} catch(e) {
Logger.log('Error: ' + e.message);
}
}
सीधा उपयोगकर्ता इनपुट Apps Script वातावरण में एक पारंपरिक REPL के समान तरीके से संभव नहीं है, आप input
चर को मैन्युअली संशोधित कर सकते हैं और एक्सप्रेशंस का परीक्षण करने के लिए myREPL()
चला सकते हैं।
- नमूना कोड निष्पादन:
मान लीजिए आप 2+2
का मूल्यांकन करना चाहते हैं। आप myREPL
फंक्शन को इस प्रकार संशोधित करेंगे:
function myREPL() {
var input = '2+2'; // यहाँ अपना एक्सप्रेशन मैन्युअली दर्ज करें
// बाकी समान रहता है...
}
myREPL()
चलाने के बाद, आउटपुट की जांच करने के लिए लॉग्स (देखें > लॉग्स) को चेक करें, जिसे कुछ इस तरह पढ़ना चाहिए:
[20-xx-xxxx xx:xx:xx:xxx] Enter your expression:
[20-xx-xxxx xx:xx:xx:xxx] Result: 4
- लॉगर के साथ डिबगिंग:
अधिक जटिल डिबगिंग के लिए, अपने कोड के भीतर वेरिएबल स्थितियों को प्रिंट करने के लिए Logger.log(variable);
का उपयोग करें, आपकी स्क्रिप्ट्स के प्रवाह और मध्यवर्ती स्थितियों को समझने में मदद करता है।
गहराई में जानना
REPL की धारणा कंप्यूटिंग के इतिहास में गहराई से निहित है, १९६० के समय-साझाकरण प्रणालियों से उत्पन्न होती है जिसने इंटरैक्टिव सत्रों की अनुमति दी थी। जैसी भाषाएं Lisp इस वातावरण में फली-फूली, क्योंकि REPL उनकी इतर प्रक्रिया के विकास के लिए महत्वपूर्ण था। इसके विपरीत, Google Apps Script, जो बहुत बाद में उभरी, मुख्य रूप से वेब के लिए डिज़ाइन की गई है, गूगल के सूट के भीतर कार्यों को स्वचालित करने पर ध्यान केंद्रित करती है न कि इतर, कंसोल-आधारित प्रोग्रामिंग पर।
Google Apps Script पारंपरिक रूप से अपने क्लाउड-आधारित स्वभाव और वेब ऐप तैनाती पर ध्यान केंद्रित करते हुए बॉक्स से बाहर समय-समय पर, इंटरैक्टिव कोडिंग सत्रों का समर्थन नहीं करती। इसकी निष्पादन मॉडल तत्काल प्रतिक्रिया लूप के बजाय वेब इवेंट्स, समय-संचालित ट्रिगर्स द्वारा सक्रिय कार्यों, या वातावरण के भीतर मैन्युअल आह्वान पर केंद्रित है।
जबकि Apps Script संपादक के भीतर REPL और डिबगर कुछ स्तर की इंटरैक्टिवता प्रदान करते हैं, वे पारंपरिक REPLs की तत्काल प्रतिक्रिया और कई प्रोग्रामिंग भाषाओं में पाए जाने वाली दक्षता को पूरी तरह से प्रतिकृति नही�