|
||||
|
||||
אני שונא להיות קטנוני, אבל... כאן calls itself מופיע במובן (התכנותי) invokes itself, (דהיינו: "מריץ את עצמו מהתחלה", או אם לדקדק ממש "מבקש להיות מורץ מהתחלה") להבדיל מ-refers to itself. שיר רקורסיבי (די מטופש) יראה כך, למשל: אני מעולם לא התיימרתי להיות משורר. עם עדיין אינכם מאמינים לי אתם מתבקשים לקרוא שיר זה מהתחלה, כאן ועכשיו, ולחזור לשורה זו רק אחרי שתסיימו. אם הגעתם עד לכאן, אתם מאמינים לי. (יש להקפיד לנהל מחסנית ראויה בזמן קריאת השיר. אזהרה: אנשים קטני-אמונה לא יסיימו לקרוא שיר זה לעולם, ועלולים לחלות ב-Stackasis, מחלה נוראה המתבטאת בהודעת השגיאה Out of Stack Space.) או לחלופין: כדי להבין מהי רקורסיה יש לקרוא שיר זה מהתחלה. (זוהי גרסה "פואטית" של רשומת האינדקס המופיעה בכמה ספרים, בסגנון: Recursion ... see Recursion - שוב, הפניה-עצמית - להבדיל מאזכור, או התייחסות, עצמיים. אגב, אם השיר היה מסתיים בשורות "יש לחזור/לשורה הראשונה", אזי התוצאה היתה לולאת GOTO פשוטה, ולא רקורסיה).כמובן שכל רקורסיה כוללת, מעצם הגדרתה, התייחסות עצמית; אבל ההיפך אינו נכון. שימי לב שהשיר לא רק מתייחס לעצמו, אלא מבקש "להפעיל את עצמו" (במקרה של שיר, להקרא) מתחילתו. ה(לא-)שיר של דובי ("...לא/תהיה התגובה/הזו/שיר") מתייחס לעצמו, בדומה למשל למשפט השקרן: "משפט זה הוא שקרי". זוהי, כאמור, התייחסות עצמית (self-reference), ולא רקורסיה. השיר לא מבקש ממך לקרוא אותו שוב בשום שלב. דקדוקי עניות: את יכולה, כתוצאה מאכויות מסויימות של ה(לא-)שיר, להחליט לקרוא אותו שוב. אולם זוהי תכונה של כל שיר, של כל טקסט למעשה; ההחלטה נובעת ממך, בהשפעת השיר, ולא מהנחיה מפורשת הקיימת בשיר. ואם תאמרי: "אבל גם בשיר המכיל הנחייה מפורשת, אני יכולה להתעלם ממנה!", הרי שזוהי "קפיצה אל מחוץ למערכת"; אנו פשוט מגיעים לנקודה בה המיפוי בין שיר לבין תוכנית ממצא את עצמו, משום שהמוח הקורא את השיר (להבדיל מהמעבד המריץ את התוכנית) לא מחוייב להתייחס להוראות המופיעות בו. אגב, ההגדרה המילונית שהבאת למונח "רקורסיה" שגויה, משום שניתן בהחלט לתכנת רקורסיה ללא תנאי עצירה (termination condition). כלומר, ניתן ליצור לולאה אינסופית בעזרת רקורסיה. ברוב שפות התכנות התוצאה תהיה "נפילה" של התוכנית בשל סופיותה של המחסנית, אך רקורסיות מסויימות ("רקורסיות זנב"), בשפות מסויימות (למשל Lisp או ML) יכולות להוביל ללולאה אינסופית שתמשיך (תאורטית) לעד. |
|
||||
|
||||
קראתי את שירך הרקורסיבי ואת הבהרותיך הנלוות והבנתי כל מילה שכתבת מא' ועד ת' אך אין זה בזכותי כי אם בזכות הסבריך הצלולים אתה מורה מצוין אשרי תלמידיך. |
חזרה לעמוד הראשי | המאמר המלא |
מערכת האייל הקורא אינה אחראית לתוכן תגובות שנכתבו בידי קוראים | |
RSS מאמרים | כתבו למערכת | אודות האתר | טרם התעדכנת | ארכיון | חיפוש | עזרה | תנאי שימוש | © כל הזכויות שמורות |