A string describing the reason that the process is waiting.
A function designator.
The arguments that wait-function is applied to.
process-wait suspends the current Lisp process until the predicate wait-function applied to wait-arguments returns true. This is tested periodically by the scheduler, but in situations where you want more control over the timing you should consider using process-wait-local instead of
process-wait and then call process-poke in the process that is expected to make the wait-function return true.
wait-reason allows you to find out why a process is waiting via the function process-whostate.
LispWorks User Guide and Reference Manual - 20 Sep 2017