[IPython-dev] Widgets for non-Python kernels

Doug Blank doug.blank at gmail.com
Tue Mar 18 16:20:31 EDT 2014


On Tue, Mar 18, 2014 at 3:15 PM, Andrew Gibiansky
<andrew.gibiansky at gmail.com> wrote:
> Hey all,
>
> I'm trying to implement widgets in IHaskell, and am having a lot of
> difficulty understanding what should go into this. I currently have Comms
> implemented, so things can change the way they are displayed to use JS+comms
> to be dynamic.
>
> However, it looks like widgets are significantly more than just that. At
> least, they are output to a special widget area of the output cell. I
> understand the general idea behind widgets but cannot understand the raw
> underlying comm/networking protocol that gets them set up and working.
>
> So, a few questions to start with:
>
> How can I make, say, a slider widget appear in the frontend? My backend has
> no Python in it whatsoever.
> Which side sends the comm_open (backend or frontend)? Is it that the backend
> sends a comm_open to the frontend with the proper target name, which then
> creates the model, and later a display() can create the view?
>
> I apologize in advance if this is thoroughly documented somewhere; I read
> the IPEP for backbone widgets and found that it described the architecture
> but I could not understand how the backend actually dealt with the messages
> and how and to whom they were sent. Also, the example notebooks are helpful
> in terms of understanding the Python support for this, but didn't quite
> answer my questions.
>
> Thanks!
>
> Andrew Gibiansky

Andrew,

We could attempt to share our ZMQServer.cs between Calico and F#, but
your native F# is so clean looking that you may not want to :) You can
see what is necessary to implement widgets here:

https://bitbucket.org/ipre/calico/src/master/Source/Calico/Widgets.cs
https://bitbucket.org/ipre/calico/src/master/Source/Calico/ZMQServer.cs

This code is still being cleaned up, but I think we have everything
implemented (traitlet-like behaviors, compositional widgets, etc).

Hope that helps; if not feel free to ask a question.

-Doug

>
>
>
> _______________________________________________
> IPython-dev mailing list
> IPython-dev at scipy.org
> http://mail.scipy.org/mailman/listinfo/ipython-dev
>



More information about the IPython-dev mailing list