תקציר הקורס (להרחבה)
הקורס מלמד עקרונות ופרדיגמות של שפות תכנות. דוגמאות ינתנו בשפות ספציפיות, אך העקרונות ניתנים ליישום במגוון רחב של שפות נוספות. מחצית מקורס בעל גוון תיאורטי, ויכלול הגדרות מדוייקות והוכחת משפטים, ומחצית בעל גוון מעשי, ויכלול מימוש תכניות בשפות שונות.
מטרות/תוצרי הלמידה (להרחבה)
למידה פעילה - תכנון מהלך השיעורים: (להרחבה)
השאיפה היא שבכל שיעור תינתן לסטודנטים שאלה אותה יפתרו בקבוצות, ולאחר כל שיעור יינתן בוחן קצר. מטלות אלה תהיינה ללא ציון.
מבחן מסכם
70% מהציון הסופי
מטלות בית
30% מהציון הסופי
מבחן ומטלות.
89-123
מודלים חישוביים
כל קורסי שנה א
The Functional Approach to Programming by Cousinaeau and Mauny
Real World OCaml by Madhavapeddy and Minsky
Semantics with Applications: An Appetizer by Nielson and Nielson
The Formal Semantics of Programming Languages -- An Introduction by Winskel
Types and Programming Languages by Pierce
Prolog Programming for Artificial Intelligence by Ivan Bratko
JavaScript: The Definitive Guide by David Flanagan
חומרים נוספים יימסרו לפי הצורך.