Вы можете иметь несколько функций внутри корпуса, поэтому просто добавьте еще одну функцию
(defun inspect-closure () (list (list 'x x) (list 'y y) (list 'z z)))
и поместите ее в let
выражение
Если вы пытаетесь создать функциюэто даст доступ к любому закрытию, тогда, строго говоря, я не думаю, что это возможно.x, y и z определены локально, поэтому, если вы хотите объявить их миру, это должно произойти из замыкания.Что вы МОЖЕТЕ сделать, так это создать макрос, который дублирует функциональность let
с добавленной возможностью возвращать его локальные переменные.Возможно, вы захотите назвать это как-то по-другому, например, mylet
или как-то еще.