קארל הרובוט
מראה
פרדיגמות | תכנות פרוצדורלי |
---|---|
תאריך השקה | 1981 |
מתכנן | ריצ'רד פטיס |
הושפעה על ידי | פסקל, קארל צ'אפק, רובוט |
השפיעה על | קארל++ גווידו וואן רובוט, הרובוט אמיל[1] |
xkarel | |
קארל (נודע בישראל כהרובוט קארל) היא שפת תכנות חינוכית עבור מתחילים, שנוצרה על ידי ריצ'רד פטיס והוצגה בספרו "קארל הרובוט: הצגה עדינה לאומנות התכנות". פטיס השתמש בשפה הזו בהרצאותיו באוניברסיטת סטנפורד בקליפורניה. השפה נקראת על שמו של הסופר הצ'כי קארל צ'אפק שטבע את המילה "רובוט" במחזה "R.U.R" ("רובוטים אוניברסליים של רוסום") משנת 1920.
מטרת השפה
[עריכת קוד מקור | עריכה]מטרת השפה היא לימוד בסיסי של תכנות בצורה מוחשית, לימוד תחביר, כתיבת פרוצדורות, כתיבת לולאות והתניות וניפוי שגיאות.
עקרונות השפה
[עריכת קוד מקור | עריכה]שפת קארל משמשת לשלוט ברובוט וירטואלי פשוט שחי בסביבה מתוחמת ובה ניתן להתנייד על גבי רשת שְׁתִי (למעלה ולמטה) וָעֵרֶב (שמאלה וימינה) בלבד. הרובוט מגיב לחמש פקודות בסיסיות:
- MOVE - קארל יזוז משבצת אחת בלבד בכיוון אליו הוא פונה. במקרה של מחסום תתקבל הודעת שגיאה והתוכנית תפסיק.
- turnLeft - קארל יפנה את פניו ב-90° שמאלה.
- putBeeper - קארל יוציא זמזם מן השק שלו ויניח אותו במשבצת בה הוא עומד. ניתן להניח יותר מזמזם אחד. במקרה שהשק ריק תתקבל הודעת שגיאה והתוכנית תפסיק.
- pickBeeper - קארל ירים זמזם מהמשבצת בה הוא עומד וישים אותו בשק. במקרה ויש במשבצת יותר מזמזם אחד, קארל ירים רק זמזם אחד. במקרה ואין זמזם במשבצת תקבל הודעת שגיאה והתוכנית תפסיק.
- turnoff - קארל יכבה את עצמו ויסיים את התוכנית.
קארל גם מבצע בדיקות "בוליאניות" בסביבתו המיידית כדי לברר האם במשבצת יש זמזמים או מחסומים, ולאיזה כיוון הוא פונה.
קישורים חיצוניים
[עריכת קוד מקור | עריכה]- אתר האינטרנט הרשמי של קארל הרובוט