סגור (שפות תכנות)


כל מה שרצית לדעת על סגור (שפות תכנות):
אופטימיזציה במדעי המחשב, סְגוֹר (באנגלית: Closure) היא פונקציה יחד עם סביבת ייחוס עבור המשתנים שאינם מקומיים בפונקציה.
המינוח סְגוֹר משמש גם להגדיר תכונה של שפה, המאפשרת קיום של פונקציות סְגוֹר (או מחלקות).
סְגוֹר מאפשר לפונקציה לגשת למשתנים שהם מחוץ לטווח-ההכרה הלקסיקלי המידי שלה.
כלומר, משתנים שאינם מוגדרים בפונקציה הנוכחית, וגם אינם משתנים גלובליים.
משתנים כאלה שנכרכו על ידי הסגור נקראים "upvalues".
סביבת הייחוס כורכת שמות שאינם לוקליים אל המשתנים המתאימים בטווח ההכרה בזמן שבו נוצרה הפונקציה, ובכך מאריכה את משך החיים שלהם להיות לפחות כמשך החיים של פונקציית-הסְגוֹר עצמה.
כאשר בקרת הזרימה נכנסת לפונקציה בשלב מאוחר יותר – כלומר, כאשר הפונקציה נקראת בפועל – ההתייחסות לשמות הללו היא התייחסות למשתנים הלא-מקומיים המקוריים שנלכדו על ידי הסְגוֹר.

נלקח מויקיפדיה

הגדרות נוספות הקשורות לסגור (שפות תכנות):
תכנות