Note: if you prefer to use your system’s globally installed packages and to install from Hackage, see the section below. If you run into any issues see the support page.
$ git clone http://github.com/tweag/HaskellR
$ cd HaskellR
$ git tag -l # list releases
$ git checkout v<latest-release> # skip if you want the master branch
$ stack --nix build
You can make passing
--nix to all Stack commands implicit by adding
stack.yaml. Alternatively, use Docker, which like Nix
obviates the need to install any dependencies globally on your system:
$ stack --docker build
If you’d rather use your system’s globally installed packages, here are the system dependencies we rely on:
R version 3.0.2 or later (3.1 or later required for test suite).
OS X users: use Homebrew to install dependencies, e.g.
$ brew update
$ brew tap homebrew/science
$ brew install r zeromq
$ pip install ipython # Only needed for IHaskell support
Windows users: Only
H are supported (no Jupyter
support yet). After installing R somewhere on your system, you’ll need
to pass additional flags when building and installing, as in the
$ stack build H --extra-lib-dirs=C:\R\bin\i386 --extra-include-dirs=C:\R\include
Once the system dependencies are installed, you can install H or the Jupyter kernel as below.
You can launch the H interactive environment locally:
$ stack [--nix|--docker] exec H
But you can also install it user-globally to
$ stack build --copy-bins H
Make sure to include the installation directory in your
$ export PATH=~/.local/bin:$PATH
H is a very basic interactive environment. It is easy to install. If you would like a more featureful environment, HaskellR includes a plugin for Jupyter’s IHaskell kernel. Since the latter depends on a number of system libraries that may or may not be installed using exactly the right configuration by your distribution, on Linux and OS X it is recommended to use Stack’s Nix or Docker support to get reliable installs.
$ stack [--docker|--nix] exec ihaskell install
Now, you can open a new Jupyter notebook in your browser using
$ stack [--docker|--nix] exec jupyter notebook
After launching the Jupyter notebook server you can visit
in your browser for an interactive tutorial, which is available in static form here.