मेटासिंटैक्टिक वैरिएबल

From Vigyanwiki

मेटासिंटैक्टिक वैरिएबल एक विशिष्ट शब्द या शब्दों का समूह है जिसे कंप्यूटर विज्ञान और विशेष रूप से कंप्यूटर प्रोग्रामिंग में प्लेसहोल्डर के रूप में मान्यता प्राप्त है। ये शब्द आमतौर पर स्रोत कोड में पाए जाते हैं और इन्हें वास्तविक दुनिया में उपयोग से पहले संशोधित या प्रतिस्थापित करने का इरादा होता है। उदाहरण के लिए, फू और बार का उपयोग टिप्पणियों, दस्तावेजों के लिए 330 से अधिक इंटरनेट इंजीनियरिंग टास्क फोर्स अनुरोधों में किया जाता है जो HTTP (वेब), टीसीपी/आईपी और ईमेल प्रोटोकॉल जैसी मूलभूत इंटरनेट प्रौद्योगिकियों को परिभाषित करते हैं।[1][2]

गणितीय सादृश्य (मैथमेटिकल अनलोगी) द्वारा, मेटासिंटैक्टिक वैरिएबल एक ऐसा शब्द है जो अन्य शब्दों के लिए एक वैरिएबल है, जैसे बीजगणित में अक्षरों को संख्याओं के लिए वैरिएबल के रूप में उपयोग किया जाता है।[1]


मेटासिंटैक्टिक वेरिएबल्स का उपयोग वेरिएबल्स, फ़ंक्शंस और कमांड जैसी संस्थाओं को नाम देने के लिए किया जाता है जिनकी सटीक पहचान महत्वहीन है और केवल एक अवधारणा को प्रदर्शित करने के लिए काम करती है, जो प्रोग्रामिंग सिखाने के लिए उपयोगी है।

सामान्य मेटासिंटैक्टिक चर

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

हालाँकि विशिष्ट नाम उस उपसंस्कृति पर निर्भर हो सकते हैं जो किसी दी गई प्रोग्रामिंग भाषा के आसपास विकसित हुई है।

सामान्य उपयोग

आमतौर पर सभी प्रोग्रामिंग भाषाओं में उपयोग किए जाने वाले मेटासिंटैक्टिक वेरिएबल्स में foobar, foo, bar, baz, qux, quux, corge, grault, garply, waldo, fred, plugh, xyzzy, and thud शामिल हैं; इनमें से कई शब्द गेम कोलोसल केव एडवेंचर के संदर्भ हैं[1][3]

एक संपूर्ण संदर्भ द हैकर्स डिक्शनरी नामक एमआईटी प्रेस की पुस्तक में पाया जा सकता है।

जापानी

जापानी में, शब्द hoge (होग)[4] और फूगा (ふが) आमतौर पर उपयोग किए जाते हैं, अन्य आम शब्दों और रूपों के साथ पियो (ぴよ), hogera (हुगेरा), और hogehoge (होगेहोग)।[5] उद्गम hoge एक मेटासिंटैक्टिक वैरिएबल के रूप में ज्ञात नहीं है, लेकिन ऐसा माना जाता है कि यह 1980 के दशक की शुरुआत में हुआ था।[5]

उपयोग के उदाहरण

इंटरएक्टिव शेल सत्र में मेटासिंटैक्टिक वेरिएबल FOO का एक स्क्रीनशॉट असाइन किया गया और प्रतिध्वनित किया गया।

सी

निम्नलिखित उदाहरण में फ़ंक्शन का नाम foo और चर नाम bar दोनों मेटासिंटैक्टिक चर हैं। से शुरू होने वाली पंक्तियाँ // टिप्पणियाँ हैं।

// The function named foo
int foo(void)
{
   // Declare the variable bar and set the value to 1
   int bar = 1;

   return bar;
}

सी ++

विभिन्न पैरामीटर (कंप्यूटर प्रोग्रामिंग) के उदाहरणों के साथ फंक्शन प्रोटोटाइप आर्गमेंट पासिंग मैकेनिज्म है:[6]

void Foo(Fruit bar);
void Foo(Fruit* bar);
void Foo(const Fruit& bar);

उदाहरण सी ++ भाषा की फ़ंक्शन ओवरलोडिंग क्षमताओं को दिखा रहा है

void Foo(int bar);
void Foo(int bar, int baz);
void Foo(int bar, int baz, int qux);

पायथन

स्पैम, हैम और अंडे पायथन प्रोग्रामिंग भाषा में उपयोग किए जाने वाले प्रमुख मेटासिंटैक्टिक वैरिएबल हैं।[7] यह भाषा के उपनाम मोंटी पाइथॉन के प्रसिद्ध कॉमेडी स्केच, "स्पैम" का संदर्भ है।[8] निम्नलिखित उदाहरण में spam, ham, और eggs मेटासिंटैक्टिक चर और से शुरू होने वाली रेखाएँ हैं # टिप्पणियाँ हैं।

# Define a function named spam
def spam():

    # Define the variable ham
    ham = "Hello World!"

    # Define the variable eggs
    eggs = 1

    return

आईईटीएफ टिप्पणियों के लिए अनुरोध

आईईटीएफ आरएफसी और कंप्यूटर प्रोग्रामिंग भाषाओं दोनों को सादे पाठ में प्रस्तुत किया गया है, जिससे नामकरण परंपरा द्वारा मेटासिंटैक्टिक चर को अलग करना आवश्यक हो जाता है, क्योंकि यह संदर्भ से स्पष्ट नहीं होगा।

ईमेल प्रोटोकॉल की व्याख्या करने वाले आधिकारिक IETF दस्तावेज़ से एक उदाहरण यहां दिया गया है (RFC 772 से - RFC 3092 में उद्धृत):

 All is well; now the recipients can be specified.

     S: MRCP TO:<Foo@Y> <CRLF>
     R: 200 OK

     S: MRCP TO:<Raboof@Y> <CRLF>
     R: 553  No such user here

     S: MRCP TO:<bar@Y> <CRLF>
     R: 200 OK

     S: MRCP TO:<@Y,@X,fubar@Z> <CRLF>
     R: 200 OK

  Note that the failure of "Raboof" has no effect on the storage of
  mail for "Foo", "bar" or the mail to be forwarded to "fubar@Z"
  through host "X".

(टेक्सइन्फो के लिए प्रलेखन कुछ टेक्सइन्फो फ़ाइल में प्रलेखित की जा रही प्रोग्रामिंग भाषा में उपयोग किए जाने वाले मेटावैरिएबल्स और मात्र चर के बीच अंतर पर जोर देता है: मेटासिन्टैक्टिक चर को इंगित करने के लिए @var कमांड का उपयोग करें। एक मेटासिंटैक्टिक चर कुछ ऐसा है जो पाठ के दूसरे भाग के लिए खड़ा है। के लिए उदाहरण के लिए, आपको किसी फ़ंक्शन के प्रलेखन में एक मेटासिंटैक्टिक वैरिएबल का उपयोग करना चाहिए जो उस फ़ंक्शन को पास किए गए तर्कों का वर्णन करता है। प्रोग्रामिंग भाषाओं में विशेष चर (प्रोग्रामिंग) के नामों के लिए @var का उपयोग न करें। ये एक प्रोग्राम के विशिष्ट नाम हैं , इसलिए @code उनके लिए सही है।[9])

उपरोक्त उदाहरण में परिलक्षित एक अन्य बिंदु यह है कि एक मेटावैरिएबल को समान रूप से एक ही उदाहरण के साथ एक दिए गए स्कीमा में इसके सभी दिखावे में प्रतिस्थापित किया जाना है। यह औपचारिक व्याकरण में गैर-टर्मिनल प्रतीकों के विपरीत है जहां उत्पादन के अधिकार पर गैर-टर्मिनल को विभिन्न उदाहरणों द्वारा प्रतिस्थापित किया जा सकता है।[10]

उदाहरण डेटा

एसक्यूएल

शिक्षण के उद्देश्य के लिए उदाहरण के लिए SQL डेटाबेस और प्लेसहोल्डर कंपनी-नाम के रूप में Acme Corporation नाम का उपयोग करना आम है। 'ACME डेटाबेस' शब्द का प्रयोग आमतौर पर प्रशिक्षण या केवल प्रशिक्षण या परीक्षण के लिए उपयोग किए जाने वाले डेटाबेस डेटा के उदाहरण-सेट के लिए किया जाता है। ACME का उपयोग आमतौर पर प्रलेखन में भी किया जाता है जो SQL उपयोग के उदाहरणों को दिखाता है, जो कई शैक्षिक ग्रंथों के साथ-साथ Microsoft और Oracle Corporation जैसी कंपनियों के तकनीकी दस्तावेज़ों में एक सामान्य अभ्यास है।[11][12][13]


यह भी देखें

संदर्भ

  1. 1.0 1.1 1.2 Eastlake 3rd, Donald E.; Manros, Carl-Uno; Raymond, Eric S. "फू" की व्युत्पत्ति. doi:10.17487/RFC3092. RFC 3092.
  2. "दस्तावेज़ पुनर्प्राप्ति". RFC Editor.
  3. Laughlin, Stuart (November 18, 2016). "मेटासिंटैक्टिक चर". programming@ProgClub (Mailing list). Archived from the original on December 2, 2022. Retrieved November 18, 2016.
  4. "hogeの意味・使い方 - 英和辞典 Weblio 辞書". ejje.weblio.jp.
  5. 5.0 5.1 メタ構文変数 (in Japanese)
  6. Mongan, John; Kindler, Noah; Giguere, Eric (2012). Programming Interviews Exposed: Secrets to Landing Your Next Job. John Wiley & Sons. p. 242. ISBN 978-1-118-28720-0.
  7. "The Python Tutorial — Python 3.8.1 documentation". docs.python.org.
  8. "General Python FAQ — Python 3.9.7 documentation". docs.python.org. Python Software Foundation. 2021-09-04. Why is it called Python?. Archived from the original on 2021-08-26. Retrieved 2021-09-05.
  9. "शब्दों और वाक्यांशों को चिह्नित करना". Texinfo 4.0. The GNU Documentation Format. Archived from the original on 2009-11-06. Retrieved 2012-11-25.
  10. R. D. Tennent (2002). Specifying Software: A Hands-On Introduction. Cambridge University Press. pp. 36–37 and 210. ISBN 978-0-521-00401-5.
  11. Kriegel, Alex (2008). एसक्यूएल बाइबिल. Indianapolis, Ind: Wiley. ISBN 978-0-470-22906-4. OCLC 402446308.
  12. Ruel, Chris (2014). Oracle 12c for dummies (in dansk). Hoboken, NJ: John Wiley & Sons. ISBN 978-1-118-74531-1. OCLC 870334544.
  13. "ASP.NET कोर ऐप्स में डेटा के साथ काम करें". docs.microsoft.com.


बाहरी संबंध