2つの単純なリスト(例えば(1 2 3)と(a b c))からリスト((1a)(2b)(3c))のリストを作成しようとしています。ただし、次のコードは動作しません。Lispで2つのリストを結合する
(defun comblist_op (list1 list2)
(let ((combl '()))
(loop for i in list1 do(
loop for j in list2 do(
(push (list i j) combl))))
combl))
エラーは次のとおりです。
*** - SYSTEM::%EXPAND-FORM: (PUSH (LIST I J) COMBL) should be a lambda expression
は、私がここにラムダ式を記述する必要がありますか?
コードの形式が正しくありません。コードの書式設定に努めてください。書式の悪いコードの間違った括弧のような、些細な構文エラーをたくさん作成するのではなく、実際には基本的なLispの紹介を読む時間を取ることを提案します。ここには良いものがあります:https://www.cs.cmu.edu/~dst/LispBook/book.pdf –