実現したいこと
lispの質問です
C言語やPython javaなどは少し触ったことがあるのですが、lispを最近学習し始めて理解が難しいです。
課題は与えられた2つのリストを連結する関数を作成したいのですが、うまくいかないです
(実行例:(app '(a b c) '(e f g)) (a b c e f g))
のようなものを作りたいです
システム関数appendがあるのは知っているのですが、自分で定義する問題で動作のコードがわかりません
環境はlispです
現在書いているコードが以下の通りです
(defun app (a b) (app '* a b))
前提
与えられた2つのリストを連結する関数appの定義を作成したいです。
(app '(a b c) '(e f g)) ⇒ (a b c e f g)
実行内容はappendと同じようなものです
発生している問題・エラーメッセージ
*** - SYSTEM::READ-EVAL-PRINT: variable DEFUN has no value The following restarts are available: USE-VALUE :R1 Input a value to be used instead of DEFUN. STORE-VALUE :R2 Input a new value for DEFUN. ABORT :R3 Abort main loop
該当のソースコード
lisp
1現在書いているコードが以下の通りです 2(defun app (a b) (app '* a b))
試したこと
(eval (list '* (read) (read)))などが資料にあったので形を真似して作成した
補足情報(FW/ツールのバージョンなど)
ここにより詳細な情報を記載してください。
> (eval (list '* (read) (read)))などが資料にあったので形を真似して作成した
これ、掛け算するコードです。
* は掛け算です。
