Understanding UIOP/RUN-PROGRAM

Mark Evenson evenson at panix.com
Tue Sep 29 16:14:17 UTC 2015



On 2015/9/29 17:34, Faré wrote:
> On Tue, Sep 29, 2015 at 11:03 AM, Mark Evenson <evenson at panix.com> wrote:
>> I wanted to confirm with ASDF developers that as far as I can tell from
>> wrangling with UIOP:RUN-PROGRAM, it isn't going to do what I want
>> because there is no "asynchronous" mode.
> UIOP:RUN-PROGRAM itself is synchronous only, but its internal
> UIOP::%RUN-PROGRAM is asynchronous on platforms that support it...
> which does not include ABCL at this time, but does include CCL and SBCL.
> The interface is under-documented, and which exact subset of features
> it supports depends on the underlying implementation;
> but obviously it works well enough to portably implement the synchronous
> UIOP:RUN-PROGRAM.

Is their any informal ASDF policy on the stability unexported symbols
like UIOP::%RUN-PROGRAM?  I suspect y'all reserve the right to yank the
rug at any point, right?  Given that UIOP::%RUN-PROGRAM abstracts the
Lisp implementations capable of asynchronous operation, I guess it is a
little more stable.

[…]
> If you only care about CCL and SBCL, you can use UIOP::%RUN-PROGRAM.
> 
> If you want a portable solution that requires an external library, try
> IOLIB/OS:CREATE-PROCESS.

The "external library" library part of IOLIB always tends to make me shy
away.

@stellian and @fare:  thanks for the advice.

-- 
"A screaming comes across the sky.  It has happened before, but there
is nothing to compare to it now."



More information about the asdf-devel mailing list