書式
cons(要素, リスト)
で用い、「リスト」の先頭に「要素」を追加したリストを返す。
(%i1) L: [1,2,3,4]; (%o1) [1, 2, 3, 4] (%i2) cons(100, L); (%o2) [100, 1, 2, 3, 4] (%i3) cons([100], L); (%o3) [[100], 1, 2, 3, 4]
追加した要素を削除するには、関数 rest や delete を用いる。
なお、rest は書式 rest(リスト, n) で用い、「リスト」の先頭から第 n 項までを取り除く関数であり、delete は書式 delete(要素, リスト, n) で用い、「リスト」に含まれる「要素」を先頭から n 個削除する関数である。(%i4) M: cons(3, L); (%o4) [3, 1, 2, 3, 4] (%i5) rest(M, 1); (%o5) [1, 2, 3, 4] (%i6) delete(3, M, 1); (%o6) [1, 2, 3, 4]
リストに要素を追加する際、先頭ではなく末尾に追加するには、関数 endcons を用いる。
(%i7) endcons(100, L); (%o7) [1, 2, 3, 4, 100]
補足 cons は construct(構成する、組み立てる、建築する) の略。