[Haskell-cafe] [ANN] IHaskell -- Haskell for Interactive Computing (via IPython)

Conrad Parker conrad at metadecks.org
Mon Oct 21 23:08:19 UTC 2013

On 22 October 2013 08:32, Andrew Gibiansky <andrew.gibiansky at gmail.com>wrote:

> Hey everyone!
> I'm excited to announce the initial release of IHaskell, a Haskell
> language kernel for IPython:
> http://gibiansky.github.io/IHaskell
> IHaskell allows IPython to communicate with the kernel and evaluate
> Haskell code. This enables using IPython interfaces such as console,
> qtconsole, and most importantly, IPython notebook with Haskell. The IPython
> Notebook supports image, HTML, and LaTeX output, which enables things such
> as Javascript viewers for complex data structures or embedded graphs and
> makes it a great platform for interactive computing.
> You can take a look at the code and install instructions here:
> https://github.com/gibiansky/IHaskell
> A general overview of the architecture is available as well:
> http://andrew.gibiansky.com/blog/ipython/ipython-kernels/
> Contributing: IHaskell is a very young project, but one that I think would
> make a great contribution to the Haskell community. There's still tons and
> tons left to do before it's on par with what IPython notebook is capable
> of, so if you're at all interested in contributing, please get in touch!
> I've tried to keep everything well-documented and readable, but I will also
> be happy to answer questions about the code myself.
> If you find any bugs or edge cases or installation difficulties, please
> send me an email or create a Github issue for it!

Hi Andrew,

this looks very cool! At first I was a bit wary of the "python" aspects of
it, but I dug around a bit in the links you provided, and it seems:

  * IHaskell is implemented purely in Haskell
  * the communication with IPython is via ZeroMQ sockets
  * once you throw data over the wall (through ZeroMQ) it gets routed via
python to whatever backend (web, LaTeX etc.)

One thing there has been a lot of demand for in the Haskell community is
plotting from a repl. It looks like IHaskell could solve that well, given
that all the plumbing already exists. How would you go about displaying,
say, a Vector Double?

I assume displaying more complex types would require some custom code. Do
you have any examples of how you would use IHaskell to display a data
structure in a web browser?

-------------- next part --------------
An HTML attachment was scrubbed...
URL: <http://www.haskell.org/pipermail/haskell-cafe/attachments/20131022/5ef70fb8/attachment.html>

More information about the Haskell-Cafe mailing list