An OCaml kernel for the IPython notebook
Clone or download
Fetching latest commit…
Cannot retrieve the latest commit at this time.
Permalink
Failed to load latest commit information.
notebooks update README Dec 21, 2015
profile fix logos May 5, 2014
.gitignore
.travis-ci.sh
.travis.yml
Ipython_json.atd Fix completion mechanism Dec 10, 2015
LICENSE add license Feb 5, 2014
META
META.in
Makefile rename makefile (been annoying me) Aug 30, 2014
README.md
_tags 1st steps towards an internal ZMQ binding May 3, 2014
base64.ml remove ocamlnet, cryptokit and optcomp depends Mar 14, 2014
base64.mli remove ocamlnet, cryptokit and optcomp depends Mar 14, 2014
completion.ml 1st steps towards an internal ZMQ binding May 3, 2014
completion.mli send ocaml reponses as pyout to get cell no's. Mar 17, 2014
exec.ml comatibility with 4.00.1 Aug 31, 2014
exec.mli
iocaml.ml Fix notebook start by custom msg handling Dec 10, 2015
iocaml.mli
iocaml.mltop 1st steps towards an internal ZMQ binding May 3, 2014
iocaml_main.ml added command line options; -suppress_*, and -package. Syntax highlig… Feb 9, 2014
iocaml_zmq.ml
iocaml_zmq.mli include new zmq bindings May 3, 2014
iocaml_zmq_stubs.c fix installation May 3, 2014
log.ml load .iocamlinit startup script Mar 17, 2014
log.mli
message.ml
message.mli
sockets.ml
sockets.mli

README.md

IOCaml logo

Build Status

IOCaml

IOCaml is an OCaml kernel for the IPython notebook. This provides a REPL within a web browser with a nice user interface including markdown based comments/documentation, mathjax formula and the possibility of generating all manner of HTML based output media from your code.

See also

This repository hosts the iocaml-kernel package.

Example picture

Installation

Installation requires opam and OCaml >= 4.01.0. To use the OCaml server

$ opam install iocaml

which will install the kernels and server. The individual kernels can be instaled with

$ opam install iocaml-kernel
$ opam install iocamljs-kernel

Running

Simply run iocaml from the command-line. This should automatically start the iocaml web interface and open a browser window

$ iocaml

When opening a new notebook,an iocaml-kernel process should be automatically started. For example enter let a = 12 + 30, hit ctrl-enter, and you should see the response val a : int = 42.

Note that starting up the kernel might take a while the first time, during which your input prompt will look like In [*].

Jupyter

The kernel can also be used with the IPython/Jupyter server.

Note: To use IOCaml with the latest IPython/Jupyter notebook, you'll need to start it with --Session.key='':

jupyter notebook --Session.key=''

This disables some security measures that iocaml doesn't yet support.

Command line options

The following options may be given to the IOCaml-kernel (via the IPython profile config) or IOCaml-server.

  • -log <filename> open log file
  • -init <file> load file instead of default init file
  • -completion enable tab completion
  • -object-info enable introspection

The following option is for use with IPython

  • -connection-file <filename> connection file name