[IPython-dev] Interactive wx/pylab with no threads (PyOS_InputHook)
barrywark at gmail.com
Mon Feb 9 12:17:02 EST 2009
On Sun, Feb 8, 2009 at 10:00 PM, Gael Varoquaux
<gael.varoquaux at normalesup.org> wrote:
> On Sun, Feb 08, 2009 at 08:49:07PM -0800, Barry Wark wrote:
>> I appologize for getting to the discussion late... There have been
>> several very interesting threads in the last couple of days. I'm
>> replying to this one arbitrarily, am intending to write more detailed
>> responses to some of the other threads, but wanted to throw this
>> general idea out there...
>> > From my reading, it seems that Brian is well on his way to having a
>> > threading-free core for Qt and GTK. With the awesome new (in a recent
>> > version, I forget which) OS X backend for matplotlib and the existing
>> > ability of Twisted's _threadedselect reactor to work with OS X's
>> > CFRunLoop via PyObjC (it uses a very similar mechanism to the
>> > PyOS_InputHook, no?), I suspect that a similar approach will work with
>> > OS X as well. I know this may sound heretical to some, but if
>> > supporting Wx GUI loops natively requires compromising the hackability
>> > and testability of the IPython core, do we *need* to support it?
> All the libraries I use, I use them through Wx GUI loops. And it is the
> case of most people under Windows (I am under Linux). The reason behind
> both statement is that Wx has been historically the easy way to have a
> powerful GUI shared between major operating systems. Maybe Qt is the way
> forward now, but it is not yet established. The problem with Wx
> (recursive Yeilds) comes from the fact that it supports different event
> loop with different semantics on different platforms, so it comes from
> that richness.
> Wx is the toolkit where you will find the largest amount of mature
> contributions. I know that matplotlib has a variety of different toolkit
> support, but matplotlib is an exemption.
> Do we need wx support? I guess not, but I would be jumping ship, and many
> people would.
That's the answer. I was just throwing out the idea. Sounds like it's
not a realistic approach at this time.
More information about the IPython-dev