לארי וול: הבלשן שכתב שפה
רוב שפות התכנות מתוכננות כקתדרלות — מתוכננות, אורתוגונליות, כפויות מלמעלה. לארי וול (Larry Wall) בנה את השפה שלו כמו קמפוס אוניברסיטאי. "פרל היא אותם שבילים בדשא", הוא הסביר פעם, כשהצביע על השבילים שסטודנטים יוצרים במדשאה במקומות שבהם היה אמור לעבור המדרכה. "השבילים האלו שהיו שם קודם הם שפות המחשב הקודמות שפרל שאלה מהן רעיונות." כבלשן בהכשרתו שמעולם לא סיים את עבודת השטח שתכנן לבצע, וול עשה משהו שאף אחד אחר בתחום המחשוב לא עשה בדיוק: הוא עיצב שפת תכנות כאילו הייתה שפה אנושית, והיא הפכה לאחד הכלים הנפוצים ביותר בתחילת ימי האינטרנט.
מכימיה לשפות
לארי ארנולד וול נולד ב-27 בספטמבר 1954 בלוס אנג'לס, קליפורניה, וגדל שם ובברמרטון, וושינגטון. הוא החל ללמוד באוניברסיטת סיאטל פסיפיק בשנת 1976, כשהוא עובר בין כימיה, מוזיקה ולימודי רפואה לפני שעבד במרכז המחשוב של האוניברסיטה ולבסוף סיים תואר ראשון בנושא מתאים להפליא: שפות טבעיות ומלאכותיות. זה היה שילוב שניבא את כל מה שעתיד לבוא.
השפה שחמקה
וול המשיך ללימודי תואר שני בבלשנות באוניברסיטת קליפורניה בברקלי (UC Berkeley), שם הוא ואשתו התכוננו עם חלום מסוים: למצוא שפה שאינה כתובה, אולי באפריקה, וליצור עבורה מערכת כתיבה. סיבות בריאותיות שמו קץ לתוכנית זו. אך ההכשרה הבלשנית מעולם לא עזבה אותו. במקום שבו מדעני מחשב אחרים פנו למתמטיקה, וול פנה למבנה הדיבור האנושי.
Twenty questions, eight minutes on the clock, and a percentile measured against everyone who has taken it. No sign-up.
Take the IQ test →פרל
לאחר לימודי התואר השני עבד וול במעבדה להנעה סילונית (JPL) של נאס"א ולאחר מכן בתאגיד פיתוח המערכות (System Development Corporation), שלימים הפך לחלק מיוניסיס (Unisys), שם יצר את שפת התכנות פרל ואת המפרש שלה. במהלך הדרך הוא כתב תוכנה שדור שלם של מנהלי מערכות הסתמך עליה: קורא החדשות rn לרשת יוזנט (Usenet) ומעל לכל, כלי ה-patch, המאפשר למתכנתים להחיל שינויים על קוד מקור ונותר בסיסי לפיתוח תוכנה. אך פרל הייתה האנדרטה שלו — שפת "דבק" שיכלה לחבר יחד טקסטים, קבצים ומערכות, והניעה חלק עצום מה-World Wide Web המוקדם.
עיצוב שפה כבלשנות
מה שהפך את פרל לייחודית היה האמונה של וול ששפת תכנות צריכה להתנהג כמו שפה טבעית. הוא שאל אוצר מילים מתוך הדקדוק, ותיאר מבנים במונחים כמו "שם עצם", "פועל" ו-"טופיקליזטור" (topicalizer) במקום ז'רגון מקובל. הוא הטמיע בה רגישות להקשר שנלקחה מבלשנות טגמימית, כך שאותו מבנה מתנהג אחרת בהקשר "סקלרי" לעומת הקשר "רשימה" — בדיוק כפי ש, במילותיו של וול, בני אדם ימצאו דרך "לתת משמעות למשהו בהקשר מסוים". הוא דחה את הטוהר האורתוגונלי האהוב על תיאורטיקנים לטובת פרגמטיות, בטענה ששפה "צריכה להיות מדיום אמנותי לא מוסרי" שמעניק למשתמשים כלים מבלי לכפות עליהם משמעת; מי שרוצה הקפדה יכול לבחור בה. הוא גם דחה על הסף עיצוב מלמעלה למטה: "אני לא מאותם אנשים שיכולים לשבת ולעצב מערכת שלמה מאפס", הודה, והעדיף גישה אבולוציונית שבה השפה צומחת כדי לענות על צרכים אמיתיים.
תרבות כחלק מהקוד
וול הבין ששפה היא יותר מאשר תחביר וסמנטיקה — היא התרבות כולה שסביבה. הוא השקיע אנרגיה בקהילה, פיקח על דיונים והיה מעורב ב-USENET כדי לעצב את הזהות של פרל. הוא היה שותף לכתיבת הספר Programming Perl, הידוע בכינויו "ספר הגמל", שאותו הוציאה הוצאת אוריילי (O'Reilly) ושמיצב אותו כמנהל במשרה מלאה של השפה. אמונתו הנוצרית, כחבר בכנסיית הנצרני (Church of the Nazarene), אף זרעה את אוצר המילים שלה: פרל מתייחסת ל-"פנינה יקרת ערך" (pearl of great price) מהבשורה על פי מתי, ומסמכי התכנון של יורשתה, ראקו (Raku), נקראים "אפוקליפסה" ו-"אקסגזה" (פרשנות).
מדוע לארי מכונה גאון
הגאונות של וול היא מקוריות תפיסתית אמיתית ולא של חישוב גולמי, ויש לתאר אותה בכנות כפי שהיא. האיכות היצירתית הספציפית היא סינתזה בין-תחומית: הוא היה הראשון לקחת את הכלים של הבלשנות התיאורית — הקשר, אבולוציה, יתירות הבעתית, עדיפות המשתמש — וליישם אותם באופן שיטתי על עיצוב של שפת תכנות. מראיינים ייחסו לו "מקוריות אמיתית בהתייחסות לעיצוב שפות תכנות כדיסציפלינה בלשנית", והתוצאה איזנה בין יכולת הבעה ליכולת למידה על ידי מתן אפשרות לאנשים לשלוט בתת-קבוצה שימושית במקום בכל השפה. זוהי תרומה אינטלקטואלית אמיתית, והאימוץ הנרחב של פרל הוא ההוכחה לכך. טיעון הנגד הכנה הוא שאותה פילוסופיה בדיוק היא זו שמדעני מחשב רבים מחשיבים כפגם. הסלחנות של פרל והאתוס של "יש יותר מדרך אחת לעשות זאת" הניבו קוד כה אידיוסינקרטי שהוא הפך לבדיחה, כזה שספג ביקורת כקוד שניתן רק לכתיבה וקשה לתחזוקה, והשפה דעכה ככל שקמו יורשות נקיות יותר. וול לא היה ממציא של אלגוריתמים עמוקים או תיאוריה פורמלית; המתנה שלו הייתה טעם, שנינות ואוזן בלשנית לאופן שבו בני אדם באמת רוצים לבטא את עצמם. האם זה מהווה גאונות תלוי בשאלה אם מעריכים פילוסופיית עיצוב באותה מידה כמו מתמטיקה — אך המקוריות עצמה אינה מוטלת בספק.
מורשת
לארי וול שינה את הדרך שבה דור שלם חשב על הקשר בין שפה אנושית לשפת מכונה. כלים שכתב, כמו patch, נותרו חיוניים בשקט עשורים לאחר מכן, ורעיונות העיצוב של פרל לגבי הקשר ויכולת הבעה התפשטו החוצה אל השפות שבאו בעקבותיה. הוא הוכיח שמתכנת יכול להיות גם בלשן, הומוריסט ופילוסוף, וכי שפה שנבנתה כמו שביל הליכה על פני מדשאה יכולה לשאת כמות מדהימה מעבודתו של העולם. בתעשייה שמוקירה הקפדה, הוא הציב מקרה מתמשך לחלופה המבולגנת, המתפתחת והאנושית כל כך.