The Gasoline project aims at implementing a Unix-ish application development framework for OCaml. The framework provides application templates factoring application components bootstrapping, configuration analyse and common application patterns, such as filter, secure tool or dæmon.
Users of Gasoline should be enabled to:
- Rapidly develop applications by using application patterns such as “Unix filter”, “tabular data processor” or “compiler”.
- Write large software suites whose elements offer homogeneous interfaces.
- Use standardised diagnostic facilities supporting internationalisation.
- Cleanly distinguish between application components and lower-level software engineering artifacts.
- Easily bootstrap and shutdown applications consisting of many modules.
Gasoline is still beta-software, and many features or design elements are susceptible to change before we reach version 1.0. Current features are:
- Configuration based on files, environment variables and command line arguments.
- Configuration cascading rules which can be used to let system administrators enforce some settings of installed applications.
- Software component management which correctly bootstraps and shutdowns the application, exception sent by the guest are caught and an emergency shutdown procedure is triggered.
- A diagnostic facility similar to
printfbut better suited to internationalisation and having routing rules.
See the ocamldoc generated documentation of the
branch for more details.
It is written by Michael Grünewald and is distributed as a free software: copying it and redistributing it is very much welcome under conditions of the CeCILL-B licence agreement, found in the COPYING and COPYING-FR files of the distribution.
It is easy to install Gasoline using opam and its pinning feature. In a shell visiting the repository, say
% opam pin add gasoline .
It is also possible to install Gasoline manually. The installation procedure is based on the portable build system BSD Owl Scripts written for BSD Make.
Verify that prerequisites are installed:
Get the source, either by cloning the repository or by exploding a distribution tarball.
autoconfto produce a configuration script. This is only required if the script is not already present.
./configure, you can choose the installation prefix with
make testto test your build.
Depending on how BSD Make is called on your system, you may need to
bmake in steps 5, 6, and 7.
The GNU Make program usually give up the ghost, croaking
*** missing separator. Stop. when you mistakingly use it instead of
Step 7 requires that you can
su - if you are not already
Michael Grünewald in Bonn, on October 21, 2014