20905 שפות תכנות
4 נקודות זכות ברמה מתקדמת
שיוך: מדעים / מדעי המחשב
שיוך נוסף: הנדסה / הנדסת תוכנה
תנאי קבלה: עמידה בדרישות האנגלית ובדרישות ההדרכה הביבליוגרפית בספרייה. ידע קודם דרוש: הקורס מבני נתונים ומבוא לאלגוריתמים והקורס תכנות מונחה עצמים (או הנדסת תוכנה: הפשטה ועיצוב מונחה עצמים). ידע קודם מומלץ: הקורסים אוטומטים ושפות פורמליות, קומפילציה.
פיתוח הקורס: פרופ' דוד לורנץ
מטרות הקורס
הקורס עוסק בהבנה תפעולית של מושגי יסוד במימושן של שפות תכנות מודרניות: ערכים, מבני נתונים מופשטים, זיכרון, מבני בקרה, כְּרִיכַת משתנים, מערכות טיפוסים, מודולים ועצמים. מבוא להבנת המשמעות של שפות תכנות באמצעות מימוש מְפַרְשִים בשפה פונקציונלית.
חומר הלימוד
הקורס אינו מניח ידע קודם בתכנות פונקציונלי, אולם נדרשת יכולת למידה מהירה של סביבת תכנות חדשה. רצויה גם הכרה של לפחות שתי שפות תכנות.
הקורס מבוסס על הספר (באנגלית):
D. Friedman & M. Wand, Essentials of Programming Languages, 3rd ed. (The MIT Press, 2008)
ועל מדריך למידה.