====== Ocaml ======
Ocaml is a popular variant of Caml language. it extends the core Caml language with a fully-fledged object-oriented layer, as well as a powerful module system, all connected by a sound, polymorphic type system featuring type inference
==== v4.02.1 ====
* Version: 4.02.1
* Added: November, 2014
* Link: http://caml.inria.fr/ocaml/index.en.html
=== Usage ===
* Show all available versions of ocamlmodule avail ocaml
* Load ocaml module: module load ocaml/4.02.1
* get quick help:man ocaml
=== Installation ===
* Download ocaml, compile & install it to /export/apps/
sudo mkdir -p /export/apps/ocaml/4.02.1/
sudo chown -R joguya:joguya /export/apps/ocaml/4.02.1/
./configure -prefix /export/apps/ocaml/4.02.1
make world &> world.log &
make bootstrap &> bootstrap.log &
make opt &> opt.log &
make opt.opt &> opt.opt.log &
make world.opt &> world.opt.log &
make install
make install
make clean
* ocaml module file
#%Module1.0
#####################################################################
##
## Ocaml Modulefile
## By James Oguya, j.oguya@cgiar.org
## November, 2014
##
set appname ocaml
set version 4.02.1
set prefix /export/apps/${appname}/${version}
set exec_prefix ${prefix}/bin
set url "http://caml.inria.fr/ocaml/index.en.html"
set msg "Ocaml is a popular variant of Caml language. it extends the core Caml language with a fully-fledged object-oriented layer, as well as a powerful module system, all connected by a sound, polymorphic type system featuring type inference..\nOcaml Official Site: $url\n"
module-whatis $msg
proc ModulesHelp { } {
puts stderr "$msg"
}
conflict ocaml
prepend-path PATH ${exec_prefix}
prepend-path MANPATH ${prefix}/man
* deploy the new module using ansibleansible-playbook site.yml -u joguya -K -s --limit=compute --tags=module