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

Pexpect-like interfaces based on jupyter_client #22579

Open
mkoeppe opened this issue Mar 10, 2017 · 6 comments
Open

Pexpect-like interfaces based on jupyter_client #22579

mkoeppe opened this issue Mar 10, 2017 · 6 comments

Comments

@mkoeppe
Copy link
Contributor

mkoeppe commented Mar 10, 2017

Many computational systems are nowadays available as jupyter kernels.
We should interface to them using jupyter_client.
This would be more robust than pexpect.

Related:

CC: @jdemeyer @simon-king-jena @sebasguts

Component: interfaces

Keywords: days84

Issue created by migration from https://trac.sagemath.org/ticket/22579

@mkoeppe mkoeppe added this to the sage-7.6 milestone Mar 10, 2017
@jdemeyer
Copy link

comment:1

Do you have a concrete kernel in mind? I'm wondering if there are any kernels where this approach makes more sense than other approaches (like pexpect or directly interfacing the libary).

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Mar 10, 2017

comment:2

This topic came up here at days84 related to polymake (#22452), however I see very wide applicability.

Obviously, directly interfacing a library is almost always better -- except if one wants to be able to access a remote server.

But a pexpect interface seems to be much easier to write -- except for tricky/brittle things such as tab completion and signal handling.

With a jupyter kernel all these tricky things are already implemented. So there would be a separation of concerns, which we can benefit from.

Moreover, since there is a clear over-the-wire protocol, rather than having to send everything through a pty, this will be more robust.

@jdemeyer
Copy link

comment:3

I think it all depends on how the Jupyter kernel is implemented. Obviously, if the Jupyter kernel uses pexpect, you cannot gain much from this approach.

@jdemeyer
Copy link

comment:6

If nobody can come up with a concrete proposal here, I'd rather close this as "wontfix". It's a cute idea but I don't really see the point.

@mkoeppe
Copy link
Contributor Author

mkoeppe commented Jul 13, 2018

comment:7

I have set it to 'wishlist'. I hope that's good enough. I would like to keep the ticket open because I may want to work on it at some time.

@mkoeppe mkoeppe removed this from the sage-7.6 milestone Jul 13, 2018
@slel

This comment has been minimized.

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

No branches or pull requests

3 participants