[IPython-user] ipython1.frontend status

Brian Granger ellisonbg.net@gmail....
Thu Jun 5 10:21:37 CDT 2008


> Hello barry,
> We want screenshots! ^_^
> Don't see if you saw my previous mail but i'm really interested in your work
> because of the ipython1 compatibility + remote execution.
> Here are two questions:
> -Do you support ctrl+c (break in a loop)?

Barry should be able to implement this is the core/engine is running
in process.  If the engine is running out of process (possibly on
another machine), he would have to tie into the daemon infrastructure
that Min has been working on.  This creates a monitor process for
every ipython process that is capable of sending it signals over the
network.  Not quite ready yet, but it is getting there.

> -Do you support in loop stdout?:
> I mean:
> If (1):
>      print "hello"
> Does it display lot of hello WHILE executing the loop?

I don't think it supports this, and this raises a huge set of
questions.  Honestly, I am not sure this can be done in generality.
Some thoughts:

1) This requires that the core/engine be able to send events back to
the frontend.  There are two ways of handling this: 1) have the
frontend register callbacks that get called when the core observes
certain events (writing to stdout) or 2) define an actual API for
monitoring the cores events.  I think this second choice is better as
it will keep the coupling between the core and frontend to a minimum.
But, this API will be quite subtle and will require extensive
knowledge of Twisted and symmetric network protocols like
Foolscap/Perspective Broker.  It would also dramatically change the
design of the controller and engines.

Oh, as an aside, another example of a core event is watching the
user's namespace for new keys.

2) We might want to allow this type of thing for in process cores, but
not for remote ones.

> -Do you support completion (althought it is not really important, 'cause
> must be easy no?)

Not yet, but everything is in place for this to work.  The only thing
that has to happen is the engine needs the complete method to be
implemented.

> If not, do you see any problem to implement this? I ask this because it was
> the hardest things i had to implement on my wx frontend.
> And I want to be sure before switching ot ipython1 core not to loose these
> important features.

Don't worry about switching to the ipython1 core, it is coming to you
(it will be in IPython trunk soon).  Then we can begin hacking on it
together to add these things.

> By the way, can you explain me difference between 'I wrote a delegate for
> the
> NSTextView' and subclassing? (sorry)

I will leave this for Barry.


More information about the IPython-user mailing list