package bogue-tutorials
Bogue tutorials — General instructions
Welcome to the Bogue tutorials!
These tutorials can be simply read online, but of course it's better (and more fun!) to execute the various code chunks by yourself. In fact, all tutorials have been designed so that they can be entirely compiled and executed. Hence, it's a good idea to install the bogue-tutorials
package on your machine:
opam pin https://github.com/sanette/bogue-tutorials.git
This will ensure that the whole code is compatible with your Bogue install. In fact, if you didn't install Bogue beforehand, this will automatically install a compatible version. You can also download the source and opam install .
; you may append the option --deps-only
if you don't want to install the executables.
How to execute these tutorials
Option 1: Interactive OCaml session
You may simply open an OCaml
toplevel (for instance utop
), and load Bogue
:
#thread;;
#require "bogue";;
Of course we assume that you have a working OCaml environment and installed the Bogue library.
Then, you can simply follow the chosen tutorial by pasting the code chunks into the toplevel.
Another option is to directly execute the tutorial. For this you have two choices:
Option 2: Download the source
First, you need to download the complete repository:
git clone https://github.com/sanette/bogue-tutorials.git
cd bogue-tutorials
Then, you can execute any tutorial with the command: make exe
from within the tutorial directory. For instance, running the "Hello world" tutorial goes as follows:
cd hello
make exe
docs/bogue-tutorials/index.html
in a browser. Option 3: Install the package
opam install bogue-tutorials
Then the executables bogue-tutorials.xxx
will be automatically installed. For instance, for running the "Hello world" tutorial, just run
bogue-tutorials.hello
Several examples in a tutorial?
No problem: if the tutorial opens several Bogue instances, just close the current Bogue window to allow the next one to open.
Ready?
Then let's start:
- Hello world
- A simple counter
- Self-modifying layouts
- More to come...