הפניות - הדרכה#

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

ללא הפניות אי אפשר לבנות האש של מערכים, מערך של האשים, עץ, גרף, רשומה עם שדות מעורבים, טבלת callbacks, או closure. איתן, אפשר. ההדרכה הזו עוברת מהשני אופרטורים יוצרי־הפניות, דרך התחביר לקבלת הערך הבסיסי בחזרה, עד לבנאים אנונימיים, הפניות לקוד, וטריק ההפניה החלשה השומר על מבנים מחזוריים מלדלוף.

למי זה מיועד#

אתם כבר כותבים Perl עובד. אתם משתמשים במערכים והאשים בנוחות, אך ברגע שהבעיה דורשת האש שערכיה מערכים - או מערך רשומות, או callback שאפשר לאחסן בטבלה - התחביר חדל להיות מובן מאליו. אותו פער הוא מה שהפניות ממלאות, ומה שההדרכה הזו סוגרת.

כיצד הדרכה זו מאורגנת#

כל פרק מציג מושג אחד ועומד בפני עצמו. קראו אותם לפי הסדר בפעם הראשונה; קפצו לפרק הרלוונטי מאוחר יותר.

  • יסודות - האופרטור \, dereference של סקלר/מערך/האש עם $$x, @$x, %$x, פירוק עמימות עם סוגריים מסולסלים, והחץ -> לגישה לאלמנט.

  • מערכים של מערכים - נתונים דו־ממדיים, תבניות איטרציה, כלל החץ־בין־subscripts ההופך את $m[i][j] לקריא כמטריצה.

  • האשים ותערובות - האשים של מערכים, מערכים של האשים, וצורת טבלת־הרשומות הנפוצה.

  • הפניות אנונימיות - [...] ו־{...} כבנאים inline, מתי לבחור בהם על פני משתנים בעלי שם.

  • הפניות לתת־שגרה - \&name, sub { ... } אנונימי, קריאה עם ->(...), וכיצד closures לוכדים לקסיקלים.

  • הפניות חלשות - Scalar::Util::weaken ומדוע מבנים מחזוריים זקוקים לה.