שאלה 2 (25 נקודות)
שאלה זו עוסקת בשפת "יוויומ" (שפת PROC בנוסף בפרק 3 בעמודים 81-74. שפה זו בהרחבה וההודעה של פונקציונות לא רקורסיביות.
ברצונו להרחיב את השפה עם ביטויים בחדוש שתאבילויים נחון על-ידי הדקדוק הבא:
Expression:=mapsum Expression [{Expression}∗0]mapsum-exp (prc exps)
כאשר,
• prc היא בעולם פונקציוני המחזיקה פנקציודות המחזוקים מסמפור וממחוקים מסמפור.
• exps הם ביטויים המופעלים בתוך; אם 0 יתכנו מהבטויים הוא שחזוקים הם בטויים מספרים. הפנקציודות prc מפעילה את סכום התוצאות הסגורום בתוך sps שנמצא לאחר.
לחילוץ דוגמה לשימוש בביטויים החדשים:
let p= proc (x)−(x,1) in mapsum p[6;−(9,2);2]
בדוגמה זו, הפנקציודות p מפעילה על כל אחד מהביטויים בתוך 3-מ אתר המביטויים בבטוויהם, וממחוקים של כל הרצעות של p על כל אחד מהביטויים בבטוויהם בתוך mapsum p על כל (num-val 12) בקבוק זה.