我有一个练习来获得一个嵌套列表并将每个单词替换为一个“有趣”的单词。我们得到了一个关于什么是“有趣”这个词的声明。
我写了这段代码
(defun funny_nestes (nested_l)
(cond ((null nested_l) "")
((atom (car nested_l))
(cons (funnyw (car nested_l))
(funny_nestes (cdr nested_l))))
(t (cons (funny_nestes (car nested_l))
(funny_nestes (cdr nested_l))))))
当 'funnyw' 是返回 "funny" 单词的函数时。
如果我跑
(FUNNY_NESTES '(ata (she lamadta be JCT) oved be NDS))
我明白了
("AbATAbA " ("SHEbE " "LAbAMAbADTAbA " "BEbE " "JCT " . "")
"ObOVEbED " "BEbE " "NDS " . "")
我想得到
(AbATAb (SHEbE LAbAMAbADTAbA BEbE JCT) ObOVEbED BEbE NDS )
我该如何解决?我怎么能用 lambda 做呢?