Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Provide replacement for GAP kernel functions dealing with "iostream" (for launching and communicating with child processes) #241

Open
fingolfin opened this issue May 16, 2019 · 0 comments
Milestone

Comments

@fingolfin
Copy link
Member

Similar to issue #240, we should provide alternatives to GAP's iostream functions, which also are about launching and interacting with child processes.

One way to go about this would be to replace all the kernel functions provided by that module:

    GVAR_FUNC(CREATE_PTY_IOSTREAM, 3, "dir, prog, args"),
    GVAR_FUNC(WRITE_IOSTREAM, 3, "stream, string, len"),
    GVAR_FUNC(READ_IOSTREAM, 2, "stream, len"),
    GVAR_FUNC(READ_IOSTREAM_NOWAIT, 2, "stream, len"),
    GVAR_FUNC(KILL_CHILD_IOSTREAM, 1, "stream"),
    GVAR_FUNC(CLOSE_PTY_IOSTREAM, 1, "stream"),
    GVAR_FUNC(SIGNAL_CHILD_IOSTREAM, 2, "stream, signal"),
    GVAR_FUNC(IS_BLOCKED_IOSTREAM, 1, "stream"),
    GVAR_FUNC(FD_OF_IOSTREAM, 1, "stream"),

Alternatively, we could replace the GAP-level code wrapping these low-level functions; it is completely contained in GAP's lib/streams.gi, see function InputOutputLocalProcess and everything dealing with IsInputOutputStreamByPtyRep.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant