רשימות

מקור השם LISP הינו List Processor. כאמור רשימות מהוות חלק משמעותי ביותר במרכיבי השפה.

תחביר רשימות: plot:\[({\text{name
 ar}}{{\text{g}}_{\text{1}}}{\text{ }}...{\text{ ar}}{{\text{g}}_{\text{n}}})\]  כאשר רשימה יכולה להתפרש כפונקציה, ואז name הוא שם הפונקציה ו-plot:\[{\text{ar}}{{\text{g}}_{\text{1}}}{\text{
 }}...{\text{ ar}}{{\text{g}}_{\text{n}}}\] הינם הפרמטרים לפונקציה, או לחילופין רשימה יכולה להתפרש בצורות מיוחדות לפי ה-name, ואז משמעות הארגומנטים תלוייה בפירוש.

פיענוח פונקציות: פונקציות מפורשות על ידי חוק הפיענוח הבא:

  1. הארגומנטים מפורשים משמאל לימין.
  2. ערכי הארגומנטים מועברים לפונקציה ששמה name.
  3. אם ארגומנט כלשהו הוא פונקציה בעצמו, הוא מפוענח בעזרת אותו כלל.

חריגים: ישנם אופרטורים מיוחדים שלא מצייתים לחוק הפירוש הכולל, כגון if, quote.

דוגמא לפונקציה: (* 7 8)

quote: חוק הפירוש של quote הוא: "אל תעשה כלום". אופרטור quote לוקח ארגומנט בודד ומחזיר אותו כפי שהוא (באופן מילולי). דוגמא: (quote (+ 3 5)). לצורך הנוחות, ניתן להשתמש בסימן ' במקום במילה quote, למשל: '(+ 3 5).

מאת: מיכאל קנוסוב

לימוד שפת LISP

בתור חובב תכנות ללא ניסיון רב אני מעונין ללמוד באופן פרטי את שפת ליספ בתור
שפת אם לתכנות פונקציונלי. אינני עוסק בתכנות ואינני מתכוון להרויח משפת תכנות מדובר רק בלימוד תכנות כהובי. אודה לך אם תןכל להתקשר לטלפון 050-6262013
תודה
מאת: white-dragon

שימוש של lisp

אפשר לכתוב בlisp מקרואים וקיצורים חדשים לemacs.
שיתוף:
| עוד