Hi asdf developers,
I recently was writing some code with UIOP:CALL-WITH-CURRENT-DIRECTORY
and came across something slightly unexpected.
In particular, running CALL-WITH-CURRENT-DIRECTORY or
WITH-CURRENT-DIRECTORY forms evaluates to NIL, whereas one may expect
that the form evaluates to the return value of THUNK or the macro body,
respectively.
In my program, I'm trying to do something like:
(uiop:with-current-directory (dir)
(uiop:run-program (list "some" "program") :output :string))
Which doesn't quite do what I want it to do.
I believe this has to do with the definition, which ends in a trailing
(chdir dir) form to get out of the directory which unfortunately returns
NIL instead of the value from evaluating THUNK.
So my question is: would it be acceptable if a future version of UIOP
changes call-with-current-directory to return the value of evaluating THUNK?
Thanks,
Kevin