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

Morten Olsen Lysgaard morten at lysgaard.no
Thu Oct 24 01:16:58 UTC 2013


What a wonderful idea Andrew!

I've always felt that Haskell has much better properties as a notebook
like language than a state full one such as Python and now we will
have the chance to show it.
I hope this will spark an interest in interactive computations with
Haskell. Myself I would be interested in outputting symbolic math as
Latex. In haskell the math would be represented as an AST. How would I
go about adding a Latex output for an AST describing mathematical
expressions to IHaskell?

On Thu, Oct 24, 2013 at 2:34 AM, Andrew Gibiansky
<andrew.gibiansky at gmail.com> wrote:
> Thank you for the correction, Ivan. I've pushed that change to
> IHaskell.cabal so that this doesn't trip anyone up in the future.
>
> IHaskell assumes that when you run 'cabal install', your IHaskell executable
> will be on the $PATH. (In order to run 'IHaskell setup', both your shell and
> IHaskell itself must be able to detect where the IHaskell executable is,
> because it needs to put that information into the IPython configuration it
> generates.)
>
> -- Andrew
>
>
> On Wed, Oct 23, 2013 at 2:18 AM, Triwanto Simanjuntak
> <simanjuntak.triwanto at gmail.com> wrote:
>>
>> Andrew,
>>
>> The solution from Ivan made the installation of IHaskell successful.
>> However when creating IPython profile by invoking, "IHaskell setup",
>> gave error, "IHaskell: command not found".  Is it because the
>> installation didn't make IHaskell on $Path ?
>>
>> Triwanto
>> simanjuntak.triwanto at gmail.com
>>
>>
>>
>> On Wed, Oct 23, 2013 at 2:39 PM, Ivan Lazar Miljenovic
>> <ivan.miljenovic at gmail.com> wrote:
>> > On 23 October 2013 16:53, Andrew Gibiansky <andrew.gibiansky at gmail.com>
>> > wrote:
>> >> Triwanto,
>> >>
>> >> IHaskell depends on the 'uuid' package and requires version 1.2.*.
>> >> Check to
>> >> make sure you have uuid installed. I build it with 1.2.13, and it looks
>> >> like
>> >> the most recent one is 1.2.14, which should also have that module [1].
>> >> So,
>> >> before building, make sure you have uuid==1.2.* installed - I'm sort of
>> >> new
>> >> to cabal packaging, so perhaps my dependencies are not specified quite
>> >> correctly, but that is the issue that message seems to point to.
>> >>
>> >> Let me know how it goes. The full list of dependencies from the *.cabal
>> >> file
>> >> is as follows, in case you have other problems:
>> >>   build-depends:       base ==4.6.*,
>> >>                        zeromq3-haskell ==0.5.*,
>> >>                        aeson ==0.6.*,
>> >>                        MissingH ==1.2.*,
>> >>                        basic-prelude ==0.3.*,
>> >>                        classy-prelude ==0.6.*,
>> >>                        bytestring ==0.10.*,
>> >>                        uuid ==1.2.*,
>> >>                        containers ==0.5.*,
>> >>                        haskell-src-exts ==1.14.*,
>> >>                        ghc ==7.6.*,
>> >>                        ghc-paths ==0.1.*,
>> >>                        random ==1.0.*,
>> >>                        strict ==0.3.*,
>> >>                        shelly ==1.3.*,
>> >>                        text ==0.11.*
>> >>
>> >> Note that zeromq3-haskell will require zmq3 installed, and in saucy
>> >> that is
>> >> provided via 'apt-get install libzmq3-dev', I think.
>> >
>> > The .V4 module only seems to have appeared in version 1.2.6; as such
>> > you'll need to change the appropriate line to "uuid >= 1.2.6 && < 1.3"
>> > (assuming you have indeed tested and found that your code won't work
>> > with the 1.3.x versions).
>> >
>> >>
>> >> Andrew
>> >>
>> >> [1]
>> >>
>> >> http://haddocks.fpcomplete.com/fp/7.4.2/20130922-179/uuid/Data-UUID-V4.html
>> >>
>> >>
>> >> On Tue, Oct 22, 2013 at 10:11 PM, Triwanto Simanjuntak
>> >> <simanjuntak.triwanto at gmail.com> wrote:
>> >>>
>> >>> Andrew,
>> >>>
>> >>> I tried to install IHaskell on Ubuntu 13.10 (Saucy 64 bit) and
>> >>> recieved
>> >>> the following error
>> >>>
>> >>> Resolving dependencies...
>> >>> Configuring IHaskell-0.1.0.0...
>> >>> Building IHaskell-0.1.0.0...
>> >>> Preprocessing executable 'IHaskell' for IHaskell-0.1.0.0...
>> >>>
>> >>> IHaskell/Message/UUID.hs:10:8:
>> >>>     Could not find module `Data.UUID.V4'
>> >>>     Perhaps you meant
>> >>>       Data.UUID.V1 (from uuid-1.2.3)
>> >>>       Data.UUID.V3 (from uuid-1.2.3)
>> >>>       Data.UUID.V5 (from uuid-1.2.3)
>> >>>     Use -v to see a list of the files searched for.
>> >>> Failed to install IHaskell-0.1.0.0
>> >>> cabal: Error: some packages failed to install:
>> >>> IHaskell-0.1.0.0 failed during the building phase. The exception was:
>> >>> ExitFailure 1
>> >>>
>> >>> Any idea how to solve it?
>> >>>
>> >>> Thanks,
>> >>>
>> >>> Triwanto
>> >>>
>> >>>
>> >>> On Tuesday, October 22, 2013 4:32:10 AM UTC+7, Andrew Gibiansky 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!
>> >>>>
>> >>>> Thanks,
>> >>>> -- Andrew Gibiansky
>> >>>>
>> >>>>
>> >>
>> >>
>> >> _______________________________________________
>> >> Haskell-Cafe mailing list
>> >> Haskell-Cafe at haskell.org
>> >> http://www.haskell.org/mailman/listinfo/haskell-cafe
>> >>
>> >
>> >
>> >
>> > --
>> > Ivan Lazar Miljenovic
>> > Ivan.Miljenovic at gmail.com
>> > http://IvanMiljenovic.wordpress.com
>
>
>
> _______________________________________________
> Haskell-Cafe mailing list
> Haskell-Cafe at haskell.org
> http://www.haskell.org/mailman/listinfo/haskell-cafe
>


More information about the Haskell-Cafe mailing list