सिंटैक्स-निर्देशित अनुवाद: Difference between revisions

From Vigyanwiki
(No difference)

Revision as of 11:41, 16 August 2023

सिंटैक्स-निर्देशित अनुवाद संकलक कार्यान्वयन की एक विधि को संदर्भित करता है जहां स्रोत लैंग्वेज अनुवाद पूरी तरह से पार्सर द्वारा संचालित होता है।

वाक्य-विन्यास-निर्देशित अनुवाद की एक सामान्य विधि व्याकरण के प्रत्येक नियम के साथ एक ऐसी क्रिया को जोड़कर एक स्ट्रिंग को क्रियाओं के अनुक्रम में अनुवाद करना है।[1] इस प्रकार, व्याकरण की एक स्ट्रिंग को पार्स करने से नियम अनुप्रयोगों का एक अनुक्रम उत्पन्न होता है। एसडीटी ऐसे किसी भी वाक्यविन्यास में शब्दार्थ जोड़ने का एक सरल तरीका प्रदान करता है।

अवलोकन

सिंटैक्स-निर्देशित अनुवाद मूल रूप से संदर्भ-मुक्त व्याकरण में प्रस्तुतियों में क्रियाओं को जोड़कर काम करता है, जिसके परिणामस्वरूप सिंटैक्स-निर्देशित परिलैंग्वेज (एसडीडी) प्राप्त होती है।[2] क्रियाएँ वे चरण या प्रक्रियाएँ हैं जिन्हें तब किया जाएगा जब उस उत्पादन का उपयोग व्युत्पत्ति में किया जाएगा। निष्पादित की जाने वाली क्रियाओं के साथ अंतर्निहित व्याकरण विनिर्देश को वाक्य-विन्यास-निर्देशित अनुवाद योजना कहा जाता है[1] (कभी-कभी इसे 'अनुवाद योजना' भी कहा जाता है।)

व्याकरण में प्रत्येक प्रतीक में एक विशेषता हो सकती है, जो एक मूल्य है जिसे प्रतीक के साथ जोड़ा जाना है। सामान्य विशेषताओं में एक चर प्रकार, एक अभिव्यक्ति का मूल्य आदि सम्मिलित हो सकते हैं। एक प्रतीक X को एक विशेषता t के साथ दिया गया है, उस विशेषता को X.t कहा जाता है

इस प्रकार, क्रियाओं और विशेषताओं को देखते हुए, व्याकरण का उपयोग क्रियाओं को लागू करके और प्रत्येक प्रतीक की विशेषता के माध्यम से जानकारी ले जाकर उसकी लैंग्वेज से स्ट्रिंग का अनुवाद करने के लिए किया जा सकता है।

मेटाकंपाइलर्स

प्रारंभिक मेटाकंपाइलर अपने विवरण में वाक्यविन्यास-संचालित और वाक्यविन्यास-निर्देशित अनुवाद शब्दों का उपयोग करते हैं। उनके पास आउटपुट कोड के लिए मेटाप्रोग्रामिंग लैंग्वेज सुविधाएँ हैं।

मेटाकंपाइलर, मेटा II और ट्री-मेटा देखें।

यह भी देखें

संदर्भ

  1. 1.0 1.1 Gurari, Eitan M. "सिंटैक्स-निर्देशित अनुवाद योजनाएँ (एसडीटीएस)". Archived from the original on 28 July 2012.
  2. Aho, Alfred V. Compilers: Principles, Techniques, & Tools. Boston: Pearson/Addison Wesley, 2007.