Это, вероятно, простая вещь, которую я упускаю, но я пытаюсь получить cdr
пары, и каждый вызов, чтобы сказать (cdr (cons 'a '5))
, возвращается как (5)
.Я вроде понимаю, почему это так, но как я могу заставить его возвращаться без паренов?
Я не хочу использовать flatten
, потому что то, что я пытаюсь получить (т.е. CDR)само по себе может быть другим выражением процедуры, уже заключенным в скобки, поэтому я не хочу сглаживать список.
(Если это имеет значение, я работаю над преобразованием выражения let
в выражение lambda
и это один из шагов, которые я предпринимаю, пытаясь разорвать лямбда-привязки, чтобы я мог их перемещать).