अभी हाल ही में एक तर्क था कि क्याnav.js में जावास्क्रिप्ट की व्याख्या बनाम संकलित की गई थी। मैं यह तर्क दे रहा था कि यह एक व्याख्या की गई भाषा है जबकि वह तर्क दे रही थी कि इसे संकलित किया गया था क्योंकि उसे js कोड में परिवर्तन देखने के लिए नोड ऐप को पुनः आरंभ करना था।
मैं सोच रहा था कि इसे संकलित नहीं माना गया क्योंकि यह चलने से पहले एक पारंपरिक संकलन कदम नहीं था, हालांकि मुझे लगता है कि तकनीकी रूप से v8 इंजन इसे गतिशील रूप से संकलित करता है।
वह कह रही थी कि गतिशील की परिभाषारनटाइम की व्याख्या का मतलब है कि इसे स्रोत फ़ाइलों में बदलाव के लिए फाइल सिस्टम की निगरानी करनी होगी और तदनुसार रनटाइम को अपडेट करना होगा - क्या यह वास्तव में परिभाषा है?
क्या एक व्याख्या की गई भाषा की परिभाषा को लाइव अपडेट के लिए फ़ाइल मॉनिटरिंग की आवश्यकता है? ऐसी सुविधा में क्या परिभाषा शामिल है?
सही परिभाषा क्या है?
उत्तर:
जवाब के लिए 0 № 1मेरा प्रस्ताव है कि चूंकि आप नोड के साथ चला सकते हैंब्रेकपॉइंट, मक्खी पर कोड (और इन-मेमोरी डेटा) को बदलें, और चालू रखें, जो संभवतः पर्याप्त सबूत है कि इसे एड-हॉक (व्याख्या) चलाया जा सकता है।
तकनीकी रूप से, हालांकि, प्रत्येक प्रोग्रामिंग भाषा एक संकलित प्रोग्रामिंग भाषा है, चाहे वह पारंपरिक रूप से संकलित हो या नहीं।