リストの構造に基づいて、リスト構造を出力するためのロットコードを書くのはうんざりです。例えば、Clojure:任意のリストを文字列表現に変換してください。
'(1 2 3)
ため、Iよ
(apply str '(1 2 3))
しかし
'((1 2 3) (4 5))
ため、I
(map #(apply str %) '((1 2 3) (4 5)))
ので、リストの入れ子構造に依存する上で必要があります。
任意のリスト構造に対処するために、どのようなエレガントな関数to-stringが必要なのでしょうか?
以下は、より良い解決策を学ぶことを望むスケッチです。
(defun to-string
"convert argument into string."
([x & xs] (str (to-string x) (to-string xs) "\n"))
([x] (str x))
)
ありがとうございます!
注意2番目の ''は '' quote'に展開され、評価されません。おそらく、式全体で1つの ''だけが必要です。 – Alex
@Alex、 'inside'を使用する間違いを指摘してくれてありがとうございます。 –