תוכן עניינים
מבוא
מבנה
תחביר
טיפוסים
רשימות
ביטויים בוליאניים
ביטויי התניה
פונקציות
ביטויי קלט/פלט
פונקציות מסדר גבוה
תכנית לדוגמא
נספחים
ביבליוגרפיה
אתר ללימוד מזורז> רשימות

רשימות

רשימות הן מבנה הנתונים הבסיסי ב-Scheme. שים לב שבדוגמאות הבאות לפני הפרמטרים מופיע גרש. הגרש מונע להעריך את הארגומנטים. להלן דוגמאות של כמה מפונקציות ה-builtin ב-Scheme הנוגעות לרשימות:

cons - לוקחת שני ארגומנטים ומחזירה אותם כזוג (רשימה).
 (cons '1 '2) is (1 . 2)
 (cons '1 '(2 3 4)) is (1 2 3 4)
 (cons '(1 2 3) '(4 5 6)) is ((1 2 3) 4 5 6)

בדוגמא הראשונה נוצר זוג מנוקד ,באחרות נוצרו רשימות. הן רשימות והן זוג מנוקד יכולים לשמש למימוש רשומה.
car - מחזירה את האיבר הראשון ברשומה או בזוג המנוקד.
 (car '(123 245 564 898)) is 123
 (car '(first second third)) is first 
 (car '(this (is no) more difficult)) is this

cdr - מחזירה את הרשימה ללא האיבר הראשון או את הרכיב השני בזוג המנוקד.
 (cdr '(7 6 5)) is (6 5)
 (cdr '(it rains every day)) is (rains every day) 
 (cdr (cdr '(a b c d e f))) is (c d e f)
 (car (cdr '(a b c d e f))) is b

?null - מחזירה t# אם האובייקט הוא רשימה ריקה, כלומר (). הפונקציה תחזיר רשימה ריקה, (), אם האובייקט הוא כל דבר אחר.

list - מחזירה רשימה הנבנית מהארגומנטים שלה.
(list 'a) is (a) 
(list 'a 'b 'c 'd 'e 'f) is (a b c d e f) 
(list '(a b c)) is ((a b c)) 
(list '(a b c) '(d e f) '(g h i)) is ((a b c)(d e f)(g h i))

length - מחזירה את אורך הרשומה.
(length '(1 3 5 9 11)) is 5

reverse - מחזירה את הרשימה ההפוכה.
(reverse '(1 3 5 9 11)) is (11 9 5 3 1)

append - מחזירה רשימה המספחת רשימה שניה בסופה של הראשונה.
(append '(1 3 5) '(9 11)) is (1 3 5 9 11)