תוכן עניינים:
הגדרה - מה המשמעות של שקיפות הפניה?
שקיפות הפניה היא תכונה של חלק ספציפי בתוכנה או שפת תכנות, ובמיוחד שפות תכנות פונקציונאליות כמו האסל ור. ביטוי בתוכנית נאמר שהוא שקוף ברפרנס אם ניתן להחליף אותו בערכו וההתנהגות המתקבלת היא אותו דבר כמו לפני השינוי. משמעות הדבר היא שהתנהגות התוכנית לא משתנה בין אם הקלט המשמש הוא הפניה או ערך בפועל אליו ההפניה מצביעה.
Techopedia מסביר שקיפות הפניה
לשקיפות הפניה שורשיה בפילוסופיה אנליטית, שהיא ענף של פילוסופיה הבוחנת מבני שפה טבעיים, ויכוחים והצהרות המבוססים על שיטות מתמטיקה ולוגיקה, והיא אינה קשורה לתכנות, אם כי אומצה על ידי מדעני מחשבים.
המושג פשוט, ניתן להשתמש ב"מפנה ", הדבר אליו מתייחס ביטוי, כדי להחליף את" המפנה "מבלי לשנות את משמעות הביטוי. לדוגמה, ההצהרה "אביו של לוק הוא אדם מרושע", "אביו של לוק" מתייחס ל" דארת 'ויידר "בספר מלחמת הכוכבים. אז ההצהרה שקופה ברפרנס כיוון שאפשר להחליף את "אביו של לוק" בכל עת ב" דארת 'ויידר "וההצהרה לא תשתנה במשמעות. עם זאת, בהצהרה "הקהל לא ידע עד 'האימפריה מכה בחזרה' שאביו של לוק הוא למעשה דארת 'ויידר" אינו ביטוי שקוף ברפרנסיון שכן אם "אביו של לוק" מוחלף ב" דארת' ויידר "הביטוי הופך להיות" הקהל לא ידע עד 'האימפריה מכה בחזרה' כי דארת 'ויידר הוא למעשה דארת' ויידר, 'שיש לו משמעות שונה לחלוטין.
ביחס לתכנות, המושג במבט ראשון זהה, אך פילוסופים רבים חולקים על כך שהמושג מיושם או מועבר היטב בשפות תכנות. אך בתכנות כללית, פירוש הדבר פשוט שניתן להחליף ביטוי בערכו המתקבל מבלי להשפיע על התנהגות התוכנית. לדוגמה, הפונקציה plusOne (x) פשוט מוסיפה אחד לכל הערך של x, כך שאם אנו יודעים ש x = 5 נוכל להחליף את הפונקציה בבטחה בערך 6 בביטוי שמניב אותה התנהגות בעת השימוש ב- plusOne (איקס). אבל אם יש משתנה חיצוני בתוך הביטוי שנשלט חיצונית, נניח בפונקציה פלוס Y (x) בה Y בתוך הפונקציה נשלטת חיצונית, יתכן שההתנהגות המתקבלת אינה זהה - במקרה זה זו אינה שקופה ברפרנסיה ביטוי.
