המפרש הראשון שלי
2026-01-08 - תכנות, שפות תכנות
מימושים של שפות תכנות יכולים להיות מאוד מורכבים ולא ברורים. אבל אם נפשט מאוד את הדרישות שלנו אנחנו יכולים להתחיל הכיר את העולם הזה יחסית בקלות. והדרך הכי טובה ללמוד היא לעשות. אז בואו נבנה מפרש ממש ממש פשוט!
בסדרת הפוסטים הזאת נערוך היכרות פרגמטית עם העולם של שפות תכנות דרך בנייה של מפרש סופר פשוט.
המפרש יהיה כתוב בשפת C ללא כלים וספריות חיצוניות מלבד כמה פונקציות בספרייה הסטנדרטית.
מדובר בסדר גודל של 500 שורות קוד שהוא אמנם לא הקוד הכי יפה או הכי תקין אבל אני מקווה שהוא יהיה ברור מספיק כדי להסיר את המסתורין מהעולם הזה.
בואו נתחיל!
- > חלק ראשון: הקדמה ושפה
- נדבר קצת על תהליך הפירוש ונגדיר את השפה אותה נממש.
- > חלק שני: ניתוח לקסיקלי
- שלב ראשון במעבר מטקסט למבני נתונים המייצג תוכנית ריצה - זיהוי של רצפי תוים לרצף של "אסימונים" (טוקנים).
- > חלק שלישי: ניתוח תחבירי
- שלב שני במעבר מטקסט למבני נתונים המייצג תוכנית ריצה - זיהוי רצף של אסימונים למבני נתונים המייצג תוכנית בשפה.
- > 🚧 חלק רביעי: הרצה
- מעבר על תוכנית הריצה לפי סדרה וביצוע הפעולות אותה כל פקודה מייצגת.
רוצים להגיב? בדקו מהי שאלת הסינון בעמוד הראשי.