Hi again, after Elias mentioned his work on UIOP I've produced a small patch that improves compatibility with regards to process spawning quite a bit, see attached (or from [1]). Missing is the option to pass in custom streams (which some other implementations support), as that's quite a bit more work with the `ProcessBuilder` interface and would require shuffling data back and forth in a separate thread perhaps. For Windows compatibility (for `process-pid`) I'm a bit stumped how that'd work with standard Java, thus it's currently unsupported. Best regards, Olof [1]: https://github.com/Ferada/abcl/tree/run-more-programs
On 30 Aug 2016, at 20:51, Olof-Joachim Frahm <olof@macrolet.net> wrote:
Hi again,
after Elias mentioned his work on UIOP I've produced a small patch that improves compatibility with regards to process spawning quite a bit, see attached (or from [1]). Missing is the option to pass in custom streams (which some other implementations support), as that's quite a bit more work with the `ProcessBuilder` interface and would require shuffling data back and forth in a separate thread perhaps.
For Windows compatibility (for `process-pid`) I'm a bit stumped how that'd work with standard Java, thus it's currently unsupported.
The code in [the ABCL swank implementation][1] represents my attempt at such abstraction. We should refactor into an EXT:PROCESS interface. [1]: https://gitlab.common-lisp.net/slime/slime/blob/master/swank/abcl.lisp#L222
Best regards, Olof
[1]: https://github.com/Ferada/abcl/tree/run-more-programs <run-more-programs.patch>
Merged to <http://abcl.org/svn/trunk/abcl/> [ferada]: https://gitlab.common-lisp.net/mevenson/abcl/commit/88dc72f1aec62ec05d4adc95... [olof]: https://gitlab.common-lisp.net/mevenson/abcl/commit/bf8c4b69d9a61fae41c7b1d0... [pipping]: https://gitlab.common-lisp.net/mevenson/abcl/commit/8bbee196b22735c0e7223c3b...
participants (2)
-
Mark Evenson
-
Olof-Joachim Frahm