משתנה מטא-תחבירי

(הופנה מהדף Foo)
יש לשכתב ערך זה. ייתכן שהערך מכיל טעויות, או שהניסוח וצורת הכתיבה שלו אינם מתאימים.
אתם מוזמנים לסייע ולתקן את הבעיות, אך אנא אל תורידו את ההודעה כל עוד לא תוקן הדף. ייתכן שתמצאו פירוט בדף השיחה.

בתכנות, משתנה מֶטא־תחבירי (metasyntactic variable) הוא שם הניתן לדבר כלשהו שדנים בו, או לקבוצה של דברים, אשר מובן וידוע למתכנתים וחובבי מחשבים. המילה foo היא הדוגמה הקנונית לכך. השימוש במשתנים מטא־תחביריים בא לעזר גם בכך שהם משחררים את המהנדס מלהמציא שמות לוגיים למשתנים בנושא שבו הם דנים.

משתנים מטא־תחביריים נקראים כך כיוון ש:

  1. הם משתנים במטא־שפה אשר משתמשים בה כדי לדבר על תוכניות (ראו גם פסבדו־קוד);
  2. הם משתנים אשר ערכיהם הם לעיתים קרובות משתנים בעצמם (למשל בשימוש כמו "הערך של f הוא הסכום של foo ו־bar").

אולם, ההנחה הסבירה והמקובלת לסיבה האמיתית לקביעת המושג הוא שזה פשוט נשמע טוב: המושג הוא חלק מז'רגון המחשבים.

דוגמאות

עריכה

Foo ו־Bar

עריכה
  ערך מורחב – Foobar

Foo הוא המשתנה מטא־תחבירי הראשון שבו נוהגים להשתמש. לעיתים רבות הוא משולב עם bar כדי ליצור foobar. דבר זה מרמז אולי ש־foo נובע ממונח סלנג של מלחמת העולם השנייה בשם fubar, שהוא ראשי התיבות ל"מקולקל/דפוק מעבר לכל אפשרות לזיהוי", אם כי אתר תיק הז'רגון טוען בצורה משכנעת שfoo קדם לfubar. למילה Foo היה גם שימוש כמילת הבלים בקומיקס הסוריאליסטי "Smokey Stover" שהיה פופולרי בשנות ה-40 וה-50. ראו גם לוחם פו לאטימולוגיה נוספת של המילה, וכמו כן גם RFC 3092 [1].

Bar הוא מן סוג של כינוי, שימוש נפוץ בו הוא ייצוג של מושג לא מוגדר, ערך, תהליך, פונקציה, אירוע, יעד, ולעיתים רחוקות ככינוי לאדם.

Quux הוא המשתנה מטא־תחבירי הרביעי, אשר השימוש בו נפוץ לאחר baz. אולם, לאחרונה הפך Qux נפוץ יותר בשימוש כמשתנה רביעי, כאשר Quux הופך להיות החמישי. הסיבה לכך כנראה היא שלאחר Quux באים בדרך כלל Quuux ,Quuuux וכו', ולכן Qux מתאים לתבנית זו באופן מושלם.

xyzzy היא מילת קסם ממשחק המחשב הרפתקאת המערה הכבירה, וככזה יש לו שימוש נפוץ כמשתנה מטא־תחבירי, במיוחד בידי האסכולה הישנה של ההאקרים.

Spam & Eggs

עריכה

Spam ו־Eggs הם משתנים מטא־תחביריים קנוניים אשר להם שימוש בשפת התכנות פייתון. זוהי התייחסות למערכון מפורסם של מונטי פייתון, אשר על שמם השפה נקראת.

Fred & Barney

עריכה

על שמם של הדמויות מהסדרה המצוירת "משפחת קדמוני".

Ned Baker ו- Meg O'Brien

עריכה

נד בייקר הוא שם בדוי (ולא דמות בדויה) או כינוי, המשמש במקום שבו יסופק שם אמיתי בזמן מאוחר יותר. יש לו שימוש נרחב בפיתוח של תוכניות מחשב אשר צריכות לטפל בשמות של אנשים אמיתיים לאחר שהפיתוח שלהם יסתיים. שמות נפוצים נוספים אשר יש להם שימוש דומה הם שמות עם פיסוק (למשל Meg O'Brien) כדי לבחון את יכולת התוכנה לטפל בפיסוק כזה.

Null Exit

עריכה

ושם המכיל טרמינולוגיה של תכנות או מסד נתונים כדי לבדוק ששימוש במונחים בהקשר זה לא ישפיעו על פעולת התוכניות..[2]

דוגמאות אחרות

עריכה

thud, corge, grault, garply, waldo, plugh.

שפות אחרות

עריכה

לפעמים לשפות אחרות יש משתנים מטא־תחביריים משל עצמם, למשל Aap, Noot, Mies מהשפה ההולנדית, pippo, pluto, paperino מאיטלקית, toto, tata, titi מצרפתית, וכן הלאה.

ראו גם

עריכה

קישורים חיצוניים

עריכה

הערות שוליים

עריכה
  1. ^ C. Manros, D. Eastlake 3rd, E. Raymond, Etymology of "Foo", tools.ietf.org (באנגלית)
  2. ^ קומיקס בנושא השפעת שמות אנשים על פעולת תוכנות מחשב, אתר xkcd (באנגלית)