Skip to content
This repository has been archived by the owner on Mar 4, 2018. It is now read-only.

Examples notebook in other languages. #46

Closed
Carreau opened this issue May 25, 2015 · 17 comments
Closed

Examples notebook in other languages. #46

Carreau opened this issue May 25, 2015 · 17 comments

Comments

@Carreau
Copy link
Member

Carreau commented May 25, 2015

Now that we have Haskell and Ruby kernel, it would be nice to have a Welcome - <language> for each.

Ping @minad and @gibiansky I guess !

@rgbkrk
Copy link
Member

rgbkrk commented May 26, 2015

That would be good. We should change the title of the Python one to say Python in it too I suppose. Also add some slick widgets. 😄

@gibiansky
Copy link
Contributor

Agreed. @sumitsahrawat is working on adding the backbone widgets from IPython to IHaskell for his GSoC project, and we have a nice parsing widget. @sumitsahrawat , we had some issues with disk usage of haskell libraries, does that mean it would be unreasonable to try to install all the display packages and use our normal demo notebook?

@rgbkrk
Copy link
Member

rgbkrk commented May 26, 2015

That notebook is small - that shouldn't be a problem at all.

It was the majority of Haskell that was huge.

@ghost
Copy link

ghost commented May 26, 2015

We're installing from hackage, so it would be possible to cherrypick the packages required by the notebook. If it doesn't affect the size much, we can go further and install all the packages.

I'll try and see how much the size changes.

@gibiansky
Copy link
Contributor

The notebook is small, but it depends on many libraries in order to function fully, and we would need to install those libraries into the docker container in order to use it. If we needed to trim the libraries, I think the two with highest priority would be parsec and diagrams; after that, blaze and one of the plotting libraries. @sumitsahrawat Let me know what happens with size constraints, and I can try to modify the demo notebook to have less libraries in it.

@Carreau
Copy link
Member Author

Carreau commented May 26, 2015

For a first notebook, you can "just" add link to your project, and a link
to a better demo notebook on nbviewer.

I think even just a hello world is a gigantic step forward, as most people
comming on jupyterdrive will just think "Oh my Gosh, I can write Haskell".

On Tue, May 26, 2015 at 9:49 AM, Andrew Gibiansky notifications@github.com
wrote:

The notebook is small, but it depends on many libraries in order to
function fully, and we would need to install those libraries into the
docker container in order to use it. If we needed to trim the libraries, I
think the two with highest priority would be parsec and diagrams; after
that, blaze and one of the plotting libraries. @sumitsahrawat
https://github.com/sumitsahrawat Let me know what happens with size
constraints, and I can try to modify the demo notebook to have less
libraries in it.


Reply to this email directly or view it on GitHub
#46 (comment)
.

@gibiansky
Copy link
Contributor

Added a notebook: #48

@sumitsahrawat Do you mind running ghc-pkg list in the Docker container, so that we know all the packages available to write code snippets with? At least one graphical one would be nice – probably diagrams and ihaskell-diagrams if the size is not prohibitive. Once I have that I'll post a link on Reddit asking people for short and suite code snippets, and we can use this notebook as a small showcase of cool things one can do with Haskell. (It should not become very large, but just bit enough to demonstrate a few areas.)

@rgbkrk
Copy link
Member

rgbkrk commented May 29, 2015

Do you mind running ghc-pkg list?

Via https://lambdaops.com/share-cell/?code=ghc-pkg%20list&kernel_name=bash

/opt/ghc/7.8.4/lib/ghc-7.8.4/package.conf.d:
    Cabal-1.18.1.5
    array-0.5.0.0
    base-4.7.0.2
    bin-package-db-0.0.0.0
    binary-0.7.1.0
    rts-1.0
    bytestring-0.10.4.0
    containers-0.5.5.1
    deepseq-1.3.0.2
    directory-1.2.1.0
    filepath-1.3.0.2
    (ghc-7.8.4)
    ghc-prim-0.3.1.0
    haskeline-0.7.1.2
    (haskell2010-1.1.2.0)
    (haskell98-2.0.0.3)
    hoopl-3.10.0.1
    hpc-0.6.0.1
    integer-gmp-0.5.1.0
    old-locale-1.0.0.6
    old-time-1.1.0.2
    pretty-1.1.1.1
    process-1.2.0.0
    template-haskell-2.9.0.0
    terminfo-0.4.0.0
    time-1.4.2
    transformers-0.3.0.0
    unix-2.7.0.1
    xhtml-3000.2.1

/home/jovyan/.ghc/x86_64-linux-7.8.4/package.conf.d:
    HUnit-1.2.5.2
    MissingH-1.3.0.1
    QuickCheck-2.8.1
    ReadArgs-1.2.2
    SHA-1.6.4.2
    StateVar-1.1.0.0
    adjunctions-4.2.1
    aeson-0.8.1.1
    ansi-terminal-0.6.2.1
    asn1-encoding-0.9.0
    asn1-parse-0.9.1
    asn1-types-0.3.0
    async-2.0.2
    attoparsec-0.13.0.0
    base-orphans-0.3.2
    base64-bytestring-1.0.0.1
    basic-prelude-0.3.13
    bifunctors-5
    blaze-builder-0.4.0.1
    byteable-0.1.1
    case-insensitive-1.2.0.4
    cereal-0.4.1.1
    chunked-data-0.2.0
    cipher-aes-0.2.10
    cipher-des-0.0.6
    cipher-rc4-0.1.4
    classy-prelude-0.10.5
    cmdargs-0.10.13
    comonad-4.2.6
    connection-0.2.4
    constraints-0.4.1.3
    contravariant-1.3.1.1
    cookie-0.4.1.5
    cpphs-1.19
    crypto-cipher-types-0.0.9
    crypto-numbers-0.2.7
    crypto-pubkey-0.2.8
    crypto-pubkey-types-0.4.3
    crypto-random-0.0.9
    cryptohash-0.11.6
    data-default-class-0.0.1
    distributive-0.4.4
    dlist-0.7.1.1
    dlist-instances-0.1
    enclosed-exceptions-1.0.1.1
    exceptions-0.8.0.2
    extra-1.2
    free-4.12.1
    ghc-parser-0.1.7.0
    ghc-paths-0.1.0.9
    hashable-1.2.3.2
    hashtables-1.2.0.2
    haskell-src-exts-1.16.0.1
    haskell-src-meta-0.6.0.9
    here-1.2.7
    hlint-1.9.20
    hourglass-0.2.9
    hscolour-1.23
    hslogger-1.2.9
    hspec-2.1.7
    hspec-core-2.1.7
    hspec-discover-2.1.7
    hspec-expectations-0.6.1.1
    http-client-0.4.11.2
    http-client-tls-0.2.2
    http-types-0.8.6
    ihaskell-0.6.2.0
    ipython-kernel-0.6.1.0
    kan-extensions-4.2.2
    keys-3.10.2
    lifted-async-0.7.0.1
    lifted-base-0.2.3.6
    mime-types-0.1.0.6
    monad-control-1.0.0.4
    mono-traversable-0.9.1
    mtl-2.1.3.1
    mutable-containers-0.2.1.2
    mwc-random-0.13.3.2
    nats-1
    network-2.6.1.0
    network-info-0.2.0.5
    network-uri-2.6.0.3
    newtype-0.2
    parsec-3.1.9
    pem-0.2.2
    pointed-4.2.0.2
    polyparse-1.11
    prelude-extras-0.4
    primitive-0.6
    profunctors-5.1.1
    quickcheck-io-0.1.1
    random-1.1
    regex-base-0.93.2
    regex-compat-0.95.1
    regex-posix-0.95.2
    safe-0.3.9
    scientific-0.3.3.8
    securemem-0.1.7
    semigroupoids-5.0.0.1
    semigroups-0.16.2.2
    setenv-0.1.1.3
    shelly-1.6.2.5
    socks-0.5.4
    split-0.2.2
    stm-2.4.4
    streaming-commons-0.1.12.1
    strict-0.3.2
    syb-0.4.4
    system-argv0-0.1.1
    system-fileio-0.3.16.3
    system-filepath-0.4.13.4
    tagged-0.8.0.1
    tar-0.4.1.0
    text-1.2.1.0
    tf-random-0.5
    th-expand-syns-0.3.0.6
    th-lift-0.7.2
    th-orphans-0.11.1
    th-reify-many-0.1.3
    tls-1.2.17
    transformers-base-0.4.4
    transformers-compat-0.4.0.3
    uniplate-1.6.12
    unix-compat-0.4.1.4
    unordered-containers-0.2.5.1
    utf8-string-1
    uuid-1.3.10
    uuid-types-1.0.1
    vector-0.10.12.3
    vector-algorithms-0.7
    vector-instances-3.3.0.1
    void-0.7
    x509-1.5.0.1
    x509-store-1.5.0
    x509-system-1.5.0
    x509-validation-1.5.2
    zeromq4-haskell-0.6.3
    zlib-0.6.1.1

@ghost
Copy link

ghost commented May 29, 2015

I've been unable to build the docker container due to interrnet connectivity issues. I'll put it on a loop and see how it fares.

@rgbkrk
Copy link
Member

rgbkrk commented May 29, 2015

Which parts are having connectivity issues for you?

@ghost
Copy link

ghost commented May 29, 2015

I mean, my internet connection periodically breaks down. No issue on the docker side.

@gibiansky try.jupyter.org also provides a terminal. 😄

@gibiansky
Copy link
Contributor

@sumitsahrawat Oh, duh. Also, could just do :!ghc-pkg list from a Haskell notebook. Should've thought of that... Thanks!

Anyway the IHaskell side of this issue is done for now!

@Carreau
Copy link
Member Author

Carreau commented May 29, 2015

@sumitsahrawat Oh, duh. Also, could just do :!ghc-pkg list from a Haskell notebook. Should've thought of that... Thanks!

Anyway the IHaskell side of this issue is done for now!

You know you can also do new > terminal right ?

@gibiansky
Copy link
Contributor

@Carreau I did not know that before, but I tried it after @sumitsahrawat pointed it out :)

@Carreau
Copy link
Member Author

Carreau commented May 29, 2015

it after @sumitsahrawat pointed it out :)

Hum, weird, this part of the message does not appear on my inbox, but is here on github...

@willingc
Copy link
Member

@Carreau @rgbkrk @parente and others, I'm going to mark this closed since the precedent to have language demo notebooks has been set. Feel free to reopen if I missed an outstanding element here. My recommendation would be to create a language specific issue if there is interest in a particular language demo/intro notebook.

@rgbkrk
Copy link
Member

rgbkrk commented Feb 17, 2016

That's great. Thanks for tending to the issues @willingc!

Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

No branches or pull requests

4 participants