English version
Accueil     À propos     Téléchargement     Ressources     Contactez-nous    

The Caml Hump: Open Source :: GPL

Mature

Major applications
Unison [09-Aug-2001, version 2.9.1, Mature] Has a Godi packageHas a documentation
Unison is a file-synchronization tool for Unix and Windows. (It also works on OSX to some extent, but it does not yet deal with 'resource forks' correctly; more information on OSX usage can be found on the unison-users mailing list archives.) It allows two replicas of a collection of files and directories to be stored on different hosts (or different disks on the same host), modified separately, and then brought up to date by propagating the changes in each replica to the other.

Stable

Native OCaml libraries
adwords API [16-Aug-2005, version 1.0.0, Stable]
Interface to Google Adwords API. This API offers rapid, type-safe development, command line tools for doing common Adwords operations, interactive access to the API.
Scientific software
Bedwyr [06-Nov-2006, version 1.0, Stable] Has a documentation
Bedwyr is an extended logic programming language that allows model-checking directly on syntactic expressions possibly containing bindings. We believe that it's an interesting tool for computer scientists, as it allows simple reasoning on declarative specifications, with several good examples, notably bisimulation checking for the pi-calculus. Other examples include type systems, games, logics, etc.
Major applications
Bibtex2html [01-Jan-2004, version 0.69, Stable] Has a documentation
bibtex2html is a collection of tools for translating from BibTeX to HTML. They allow to produce, from a set of bibliography files in BibTeX format, a bibliography in HTML format.
Bindings with C libraries
Bindings for Chipmunk [30-Apr-2008, version 0.01, Stable]
Chipmunk is a rigid body physics library, designed for 2D video games. It is intended to be fast, numerically stable, and easy to use.
Author: Florent Monnier.
Development tools
Bisect [07-Nov-2012, version 1.3, Stable]
Bisect is a coverage tool for the Objective Caml language. It is a camlp4-based tool that allows to instrument your application before running tests. After application execution, it is possible to generate a report in HTML format that is the replica of the application source code annotated with code coverage information.
Author: Xavier Clerc.
Bindings with C libraries
Blahcaml [18-Feb-2010, version 2.0, Stable]
Blahcaml provides basic Ocaml bindings to the Blahtex library. Blahtex is written in C++, and aims at the conversion of TeX equations into MathML.
Author: Dario Teixeira.
Development tools
caml2html [26-Nov-2002, Stable]
A tool to create hilighted html pages from OCaml files (.ml, .mli, .mll and .mly).
Development tools
Caml2tex [08-Jun-2005, Stable]
An application that produces LaTeX2e code from caml (OCaml, Caml light) source files.
Development tools
CamlTemplate [31-May-2005, version 1.0, Stable] Has a Godi packageHas a documentation
A small template processor library for Objective Caml. It can be used to generate web pages, scripts, SQL queries, XML documents and other sorts of text files.
Author: Benjamin Geer.
Development tools
CCSS [11-Mar-2010, version 1.1, Stable] Has a documentation
CCSS is a preprocessor/pretty-printer for CSS (Cascading Style Sheets). It extends the CSS language with support for declaration of variables and basic arithmetic operations (addition, subtraction, multiplication, division). The programme is supposed to be used as a filter: it reads the CSS source from stdin and outputs its result on stdout.
Author: Dario Teixeira.
Others
Cocanwiki [01-Apr-2005, version 1.3.11, Stable]
A wiki in OCaml.
Native OCaml libraries
Config_file [14-Jan-2011, version 1.0, Stable]
This library allows one to save configuration parameters (basic types, lists, user defined, etc.) into a file and load them. The configuration file is human readable, structured and allow (* *) comments.
Native OCaml libraries
Custom Tree Models for LablGTK [06-Aug-2007, version 1.0, Stable] Has a tutorial
Some code to make it relatively easy to develop custom tree models using LablGTK (GTK+ 2.0 in OCaml). This means that you can have a tree structure coded naturally in OCaml and treat it more or less directly as a tree model, instead of having to shove values into a GTree.tree_store. There are some caveats as described in the README file.
Author: Robert Schneck.
Applications written in Caml
Demexp [16-Aug-2005, version 0.6.0, Stable] Has a documentation
The demexp project is a free software project (GNU GPL) that aims at making the software needed to start the democratic experience project. The democratic experience is a large scale project of direct democracy. It aims at providing the tools to facilitate the expression of all citizens, to transform this expression into decisions, and to apply this decision.
Author: David Mentre.
Ocamldoc generators
DocCHM [19-Mar-2003, Stable]
DocCHM is a CHM generator for OCamlDoc. It enable you to generate a CHM file ( Windows CompressedHTML Help file ) instead of the standard HTML output. It automaticaly generate the index and the hyperlinks to upper module, types, etc. You can then quickly browse the documentation, and search index by name.
Native OCaml libraries
Fiat-Shamir-ZKP [25-Aug-2010, version 1.0, Stable]
An implementation of Fiat and Shamir's zero-knowledge network authentication protocol
Author: Eray Ozkural.
Major applications
Geneweb [09-Aug-2001, version 4.09, Stable] Has a documentation
A genealogy software with a Web interface. It can be used off-line or as a Web service.
Others
Gocaml [04-Mar-2002, version 1.0, Stable]
A graphical frontend for GMP Go engines, written in ocaml.
Author: Andrew Birkett.
Development tools
Highlight [28-Mar-2007, version 2.4.8, Stable] Has a documentation
Highlight converts source code to formatted text with syntax highlighting. Features include coloured output in HTML, XHTML, RTF, TeX, LaTeX and XML format; Support for 120+ programming languages; include 40 colour themes; platform independent; customizable and easy to use. OCaml is also supported.
Author: Andre Simon.
Native OCaml libraries
JavaLib and Sawja [08-Oct-2012, version 2.2.2/1.4, Stable] Has a documentationHas a tutorial
manipulate, and generate valid .class files.Sawja is a library relying on Javalib to provide a high level representation of Java bytecode programs. Its name stands for Static Analysis Workshop for Java. Whereas Javalib is dedicated to isolated classes, Sawja handles bytecode programs with their class hierarchy and control flow algorithms. Moreover, Sawja provides some stackless intermediate representations of code. The transformation algorithm, common to these representations, has been formalized and proved to be semantics-preserving.An Eclipse plugin for Sawja analyses is also available: it allows developers to add an analysis in Eclipse without requiring any additional Java code generation.
Development tools
Js_of_ocaml [17-Dec-2012, version 1.3, Stable] Has a documentation
Js_of_ocaml is a compiler of OCaml bytecode to Javascript. It makes it possible to run Ocaml programs in a Web browser.
Development tools
Kaputt [30-Aug-2012, version 1.2, Stable]
Kaputt is a testing tool for the Objective Caml language.
Author: Xavier Clerc.
Others
kom [07-Jul-2006, version 1.0, Stable] Has a tutorial
Kom stands for "Keep old mails". It imports emails in a MySQL database and provides a frontend in gtk2 to search and browse the archived emails. Some options can be used to incrementally import mails (do to it each month for example). It can also export mails stored in the database, in mbox format or one-message-per-file format, and generate some statistics.
Author: Maxence Guesdon.
Bindings with C libraries
Lablgtkspell [28-Apr-2004, version 1.0.0, Stable]
Bindings for the GtkSpell spellchecking widget library for use with lablgtk2.
Author: Shawn Wagner.
Others
Liber(ator) [20-Dec-2002, version 2.0.2, Stable]
Liberator is the unix guru's cli to the Freenet network, inserting and requesting easily and efficiently.
Authors: Eric Norige and Travis Bemann.
Applications written in Caml
Liquidsoap [11-Mar-2010, version 0.9.2-2, Stable] Has a documentation
Savonet is a set of open-source developments around audio stream generation (ogg/mp3/...), and particularly web-radios using Icecast. It is written in OCaml. The heart, liquidsoap, is a very powerful and flexible streaming language, abstracting over format, protocol, stream generation, manipulation and output. Allowing arbitrarily deep-nested composition of streams and easy extensibility, it gives you more power than you need for creating an original web-radio. But liquidsoap is still very light and easy to use, in the Unix tradition of many simple strong components working together.
Others
LSD mount utilities [26-Feb-2007, version 1.3, Stable]
The LSD mount utilities allow to automate mounting of encrypted filesystems in linux with cryptsetup and loopback devices and enable users (not only root) to mount encrypted filesystems when appropriate entries to /etc/fstab have been added by root.
Scientific software
Marionnet [08-Feb-2011, version 0.90.6, Stable] Has a documentation
Marionnet is a virtual network laboratory: it allows users to define, configure and run complex computer networks without any need for physical setup. Only a single, possibly even non-networked GNU/Linux host machine is required to simulate a whole Ethernet network complete with computers, routers, hubs, switchs, cables, and more. Support is also provided for integrating the virtual network with the physical host network. As Marionnet is meant to be used also by inexperienced people, it features a very intuitive graphical user interface.
Development tools
Mascot [30-Aug-2012, version 1.0, Stable] Has a documentation
Mascot is a style-checker for Objective Caml sources. It provides checks in various categories: code, documentation, interface, metrics, and typography. The goal of the tool is to allow a (team of) developer(s) to enforce style properties over a source codebase for greater coherency and style uniformity. The tool is highly customizable, allowing one to choose the checks to perform, as well as exceptions to those checks in given files. Moreover, a plugin system allows the developer to add its own checks, and output modes. Bundled output mode range from bare text to CheckStyle- and JDepend-compatible XML file in order to allow integration with Hudson.
Author: Xavier Clerc.
Toys - Examples
Mini Gosix [23-Mar-2009, version 1.0, Stable]
Mini Gosix is a small program that allows you to play Gosix board game (by Pierre Canuel) against a computer opponent. There are selectable difficulty levels and GUI. Program is written in OCaml using TK widgets.
Major applications
MLDonkey [16-Oct-2002, version 2.00, Stable] Has a documentation
A linux client developed in Objective Caml for several peer-to-peer file sharing networks.
Author: [b8]bavard.
Bindings with C libraries
OCam'OLE [17-Nov-2003, version 1.0, Stable]
OCam'OLE is an OLE binding for OCaml. It enable you to control remote COM objects with OCaml and is provided with OLEGen, a program that generate ML/MLI static type interface from the OLE Type Libraries.
Native OCaml libraries
OCaml-bitcoin [07-Nov-2012, version 1.0, Stable]
OCaml-bitcoin is a library offering an OCaml interface to the official Bitcoin client API. It works by making JSON-RPC calls over the network to a running Bitcoin daemon offering the client API.
Author: Dario Teixeira.
Native OCaml libraries
OCaml-HTTP [20-Oct-2010, version 0.1.4-3, Stable] Has a Godi packageHas a tutorial
A library inspired from perl's HTTP::Daemon that permits to write simple HTTP daemons in OCaml.
Development tools
ocamlglobaltags [15-Jun-2009, version 1.0, Stable]
A source code tagger for OCaml that can be plugged in to GNU Global's tag set up.
Author: Matthew Hague.
Ocamldoc generators
Odoc_xref [23-Jan-2013, version 4.00, Stable] Has a documentation
Custom ocamldoc html generator with the capability to cross-reference material from libraries.
Author: Hendrik Tews.
Development tools
OMake [08-Aug-2007, version 0.9.8.5, Stable] Has a Godi packageHas a documentation
OMake is a build system designed especially for large projects. It uses a syntax similar to make utilies you may have used, but with enhancements.
Author: Jason Hickey.
Development tools
Oug [01-Jul-2010, version 2.0-alpha, Stable] Has a tutorial
Oug is a code analysis tool building reference graphs from OCaml code, that is graphs representing which elements (value, module, class, ...) reference which elements. It comes with the Ouglib library to be able to embed the analyzer in other OCaml applications. From the graph, various outputs can be obtained: list of elements not referenced anywhere (useless elements and so potential dead code), various graphiz graphs, ...
Author: Maxence Guesdon.
Scientific software
PsiLAB [02-Nov-2001, version 2.0, Stable] Has a documentation
Scientific and numerical research environment.
Author: Stefan Bosse.
Development tools
Ragel [04-Jul-2011, version 6.7, Stable] Has a documentation
Ragel compiles executable finite state machines from regular languages. Ragel targets C, C++, Objective-C, D, Java and Ruby. Ragel state machines can not only recognize byte sequences as regular expression machines do, but can also execute code at arbitrary points in the recognition of a regular language. Code embedding is done using inline operators that do not disrupt the regular language syntax.
Author: ygrek.
Major applications
SpamOracle [26-Aug-2002, version 1.4, Stable] Has a documentation
SpamOracle, a.k.a. "Saint Peter", is a tool to help detect and filter away "spam" (unsolicited commercial e-mail). It proceeds by statistical analysis of the words that appear in the e-mail, comparing the frequencies of words with those found in a user-provided corpus of known spam and known legitimate e-mail. The classification algorithm is based on Bayes' formula, and is described in Paul Graham's paper, A plan for spam.
Author: Xavier Leroy.
Development tools
Taglet [27-Aug-2003, version 1.3, Stable]
OCaml tag file generator.
Author: Issac Trotts.
Native OCaml libraries
Timbuk [05-Apr-2002, version 2.0, Stable]
Timbuk is a collection of tools for achieving proofs of reachability over Term Rewriting Systems and for manipulating Tree Automata (bottom-up non-deterministic finite tree automata).
Development tools
tuareg imenu [09-May-2002, Stable]
Tuareg imenu is an extesion for Emacs of the tuareg mode (it do not work under XEmacs). It help to have an global visoin of you code
Author: Rémi Vanicat.
Others
UMLMON [18-Oct-2005, version 1.0.1, Stable] Has a Godi package
Gerd Stolpmann offers UMLMON, which is an add-on product to User Mode Linux (UML) that strongly simplifies its administration. Up to now a system operator needed several weeks to develop scripts in order to deploy User Mode Linux. UMLMON is a ready-to-use solution setting standards for UML operating, especially concerning the number of features and the operational safety.
Author: Gerd Stolpmann.
Development tools
Vim support for .annot files [06-Oct-2003, Stable]
A ViM extension that is able to parse .annot files and print the type of an highlighted (visual mode) part of an ocaml source file.
Native OCaml libraries
WDialog [07-Nov-2005, version 2.1.2, Stable] Has a documentationHas a tutorial
WDialog is an advanced system to create dialog-centric web applications.'
Author: Gerd Stolpmann.
Scientific software
Why [29-Sep-2003, version 1.42, Stable] Has a documentation
Why is a software verification tool. Why aims at being a verification conditions generator (VCG) back-end for other verification tools. It provides a powerful input language including higher-order functions, polymorphism, references, arrays and exceptions. It generates proof obligations for many systems: the proof assistants Coq, PVS, HOL Light, Mizar and the decision procedures haRVey and Simplify.
Others
WTimer [24-Mar-2003, version 1.0, Stable]
WTimer allows you (and your group) to enter time sheets, to store them into a database, and to retrieve reports of them. What can you put into a time sheet? These sheets are organized by days, and every day has several rows. The rows contain the clock time when the activity starts, when the activity ends, how long it lasts, a project identifier, and a description (free text).
Author: Gerd Stolpmann.
Others
Wyrd [03-Mar-2008, version 1.4.4, Stable] Has a Godi package
Wyrd is a curses front-end for Remind, a powerful calendar and alarm application. The display features a scrollable day calendar suitable for visualizing your schedule at a glance. Wyrd integrates with an external editor of your choice to make manual editing of reminder files more efficient. Other features include significant configurability and Mutt-like interface design.
Author: Paul Pelzl.
Others
Yamlpp is a very simple HTML preprocessor inspired by Nicolas Thiery's htmlpp.
Development tools
yypkg [08-Oct-2012, version 1.6.0, Stable] Has a tutorial
YYPkg is a small, fast, platform-agnostic package manager. It can be used to manage any directory. It is built to help cross-compilation setups and it works both for and on Windows.
Author: Adrien Nader.

Beta

Others
apalogretrieve [08-Jan-2008, version 0.9.6, Beta] Has a documentation
Apalogretrieve is a stand-alone program that provides a SQL-like interface for Apache-Logfile-Queries.
Author: Oliver Bandel.
Ocamldoc generators
Argot [16-Aug-2012, version 1.1, Beta] Has a documentation
Argot is an enhanced HTML generator for the ocamldoc tool of the Objective Caml language. It provides additional styles, additional tags, and support for tables.
Author: Xavier Clerc.
Development tools
Automli [07-Jan-2004, version 0.4, Beta]
Automli is a small program for O'Caml programmers which automatically generates MLI files from ML files and a specification of which functions, types etc. to export or hide.
Author: Jim Farrand.
Native OCaml libraries
BDBFS [18-Dec-2002, version 0.3, Beta]
BDBFS is a portable, user-level NFS fileserver implemented in OCaml. BDBFS stands for Berkeley DataBase File System: it stores files, metadata (directories, inodes, the superblock) as key:value pairs using the Berkeley Database (Berkeley DB) library.
Author: Lex Stein.
Others
Bibgrep [09-Feb-2004, version 0.51, Beta]
Bibgrep indexes and searches BibTex files for entries matching a given query. Its usage is similar to the command ``grep'' and the queries uses a Google-like syntax.
Toys - Examples
Binkhop [30-Apr-2008, version 0.01, Beta]
Binkohp is a little game inspired by the Mah-jong and extended to 3D.
Author: Florent Monnier.
Native OCaml libraries
Camlhilight [18-Feb-2010, version 1.0, Beta] Has a documentation
Camlhighlight provides syntax highlighting and pretty-printing facilities for displaying code samples in Ocsigen applications. The library works by parsing the output of Highlight, a widely available application supporting the most common programming and markup languages.
Author: Dario Teixeira.
Others
Camlserv [24-Feb-2004, version 0.2-2, Beta] Has a documentation
A web server able to execute caml applets to generate dynamic pages.
Scientific software
Combinator Engine [26-Sep-2002, Beta]
A collection of the author's projects on combinator-based implementations of functional languages.
Applications written in Caml
Confluence [25-Mar-2004, version 0.9, Beta] Has a documentationHas a tutorial
A powerful logic design language that combines the dataflow and component-based methodologies of HDL with the expressiveness of modern functional programming.
Author: Tom Hawkins.
Native OCaml libraries
coThreads [18-Sep-2007, version 0.10, Beta] Has a documentation
coThreads is a concurrent programming library for OCaml. It enhances the Threads library of the standard OCaml distribution in two dimensions: coThreads implements the same API of the standard Threads library on different execution engines (process, netwoker(todo)), so that a single copy of source code can be compiled and deployed to different environments without modification; coThreads is also a super set of the standard Threads library, with extra components (STM etc.), functions (spawn etc.) and features (object-level compatibility etc.).
Author: Zheng Li.
Development tools
Cursico [16-Apr-2008, version 080415, Beta]
An OCaml curses editor to write coloured texts or draw things.
Toys - Examples
dispimg [28-Apr-2004, version 1.0.0, Beta]
Exceedingly simple, lightweight, image viewer, using lablgtk2.
Author: Shawn Wagner.
Toys - Examples
DominoCaml [25-Aug-2003, version 3.3, Beta]
An OCaml GPL software aimed to explore aspects of the dominoes game.
Scientific software
DrGeocaml [29-Apr-2005, version 2004-05-07, Beta] Has a documentation
A dynamic geometry software using the Gtk toolkit. Large use of the DrawingArea widget.
Others
Ensemble Juke Box [23-Aug-2002, version 0.9, Beta] Has a documentation
A distributed audio application designed to exchange high-quality audio data bewteen users on local area networks.
Authors: Jason Hickey and Mark Hayden.
Others
Fjavac [30-Sep-2005, version 0.3.0, Beta]
Fjavac is a Java 5 compiler front-end implemented in the functional language OCaml. Currently the compiler can parse and pretty-print almost all of JDK 1.4.2 and JDK 1.5.0 files (including generics, wildcards, annotations, enumerations, static imports, for-each loops and variable arity arguments). A full compiler (with type inference, capture conversion and type checking) is underway.
Author: Stephen Tse.
Bindings with C libraries
Gammu [04-Jul-2011, version 0.9, Beta]
This is a binding to libGammu, which provides abstraction layer to work with different cell phones from different vendors.
Web application
GikiWiki [17-Feb-2005, Beta]
GikiWiki is a minimalist wiki in OCaml.
Author: Neale Pickett.
Scientific software
HHMM library and designer [16-Sep-2005, version 0.1.0, Beta]
Hhl is a library for Hidden Markov Models (HMM) and Hierarchical HMMs (HHMMs) in Ocaml. Both are probabilistic sequence models. Hhd is a designer that allows to design by hand models and save them quickly.
Author: Henri Binsztok.
Others
Hlins [10-Aug-2001, version 0.39, Beta] Has a documentation
Hlins is a tool to insert hypertext links into HTML documents, using a database with entries of the form "name = url".
Author: Ralf Treinen.
Bindings with C libraries
ImageMagick Binding for OCaml [09-Dec-2005, version 0.15, Beta]
An interface to the library of ImageMagick.
Author: Florent Monnier.
Development tools
Katmake [04-Mar-2003, version 0.7, Beta] Has a documentation
Katmake is an GNU automake-like utility for the OCAML language. It is designed for generating Makefile for OCAML language. You give it a `Makefile.am' describing the project as input and it produces a Makefile. This Makefile is able to build all the project, to perform or to remove the installation, to build the distribution and to remove temporaries files.
Author: Hugues Cassé.
Native OCaml libraries
Kdialog2OCaml [27-Feb-2006, Beta]
To use Kdialog from OCaml.
Bindings with C libraries
l-bfgs [04-Jul-2011, version 0.5, Beta]
L-BFGS is a limited-memory quasi-Newton code for bound-constrained optimization. It is a binding to http://users.eecs.northwestern.edu/~nocedal/lbfgsb.html
Bindings with C libraries
libguestfs [14-Apr-2009, version 0.9, Beta]
libguestfs is a library for accessing and modifying guest disk images. Amongst the things this is good for: making batch configuration changes to guests, getting disk used/free statistics (see also: virt-df), migrating between virtualization systems (see also: virt-p2v), performing partial backups, performing partial guest clones, cloning guests and changing registry/UUID/hostname info, and much else besides. libguestfs uses Linux kernel and qemu code, and can access any type of guest filesystem that Linux and qemu can, including but not limited to: ext2/3/4, btrfs, FAT and NTFS, LVM, many different disk partition schemes, qcow, qcow2, vmdk. libguestfs provides ways to enumerate guest storage (eg. partitions, LVs, what filesystem is in each LV, etc.). It can also run commands in the context of the guest. Also you can mount guest filesystems on the host (requires root privs and NFS). libguestfs is a library that can be linked with C and C++ management programs (or management programs written in OCaml, Perl or Python). You can also use it from shell scripts or the command line.
Native OCaml libraries
LocalCaml [25-May-2004, version 0.2.0, Beta] Has a documentation
A message catalog system for localising text in OCaml programs. The approach taken is partly inspired by Perl's Locale::Maketext module. In an attempt to provide the flexibility needed to adapt sentence structure and morphology to numeric parameters in messages, the library uses a general-purpose template engine, CamlTemplate as a language for writing message templates.
Author: Benjamin Geer.
Scientific software
Logic File System [09-Jul-2008, version 0.5, Beta] Has a documentationHas a tutorial
LFS is a very expressive file system coded in OCaml. LFS enables the user to access his files through an additionnal mountpoint, /lfs, where powerful logic queries can be issued and navigation can be done through different dimensions, like date, size, or extension.
Author: Yoann Padioleau.
Scientific software
McCarthy [21-Feb-2006, Beta] Has a documentation
McCarthy is a simple, first-order functional programming language. The interpreter of this language is also called McCarthy. McCarthy is Turing-complete i.e. it can compute all Turing-computable functions on the integers. It is not suitable for general purpose programming as it offers only an elementary subset of the features found in general purpose programming languages, but it can serve as a model of computation.
Author: Geopoul.
Native OCaml libraries
Missinglib [02-Jul-2004, version 0.4.1, Beta] Has a Godi package
A collection of various utilities for OCaml.
Author: John Goerzen.
Development tools
Mleternal [04-Jul-2011, version 0.2, Beta] Has a documentation
Incrementally rebuild OCaml programs as source code evolves
Author: Dawid Toton.
Others
Monitor [29-May-2006, version 0.3, Beta]
This tool allows you to monitor one or more web sites (or other resources) by regularly doing tests on them. A test consists of grepping a resource (an HTML page fetched by URL, or the output of an arbitrary command) using a boolean combination of Perl-compatible regular expressions. On failure, a mail is sent to a list of admins. Includes a Debian package and a flexible configuration file syntax.
Author: Berke Durak.
Others
namealign [16-Aug-2007, version 0.6, Beta] Has a documentation
The program namealign renames files in a way that they are equally formatted. It follows the same idea of character-classification as the tool pftdbns, but does not sort files into directories. Instead it renames files of the same filename-macrostructure to be equally formatted (e.g. inserting a leading 0 in a numbered part of the name).
Author: Oliver Bandel.
Scientific software
nmag [22-Nov-2007, version 0.1beta, Beta] Has a documentation
nmag is a micromagnetic simulation package based on the general purpose multi-physics library nsim. It is developed using Python and OCaml and interfaces both.
Development tools
Nnjoy [07-Nov-2005, version 0.2, Beta]
NJoy is a variant of the concatenative programming language Joy The main difference is that it is enriched with an easy to module system with optionally private declarations. Only a part of the standard library of Joy is implemented. The interpreter is easy to use, but the builtin functions are poorly documented. The performance of the interpreter (natively compiled and stack traceback switched off) is on par with optimized C implementation of Joy.
Scientific software
oc-FP [17-Nov-2003, Beta] Has a documentation
An OCAML implementation of John Backus' FP system.
Development tools
OCaml Metrics [02-Jun-2009, version 0.51, Beta]
OCaml Metrics is a simple OCaml code analysis tool. It can compute some metrics of functions and modules: cyclomatic complexity, the number of lines of code, Halstead complexity measures (difficulty, volume and effort) and Maintainability Index. OCaml Metrics generates reports in three formats: HTML, simple XML or plain text. This allows developers to find parts of their projects which need refactoring in order to keep the projects easily maintainable.
Native OCaml libraries
OCaml MySQL Protocol [19-Mar-2012, version 0.4, Beta] Has a tutorial
Implementation of MySQL Protocol with the Bitstring library.
Native OCaml libraries
ocaml-duppy [10-Mar-2008, version 0.1.0, Beta]
An advanced scheduler. The basics of this scheduler is to implement a wrapper around Unix.select in order to be able to wait for events on a socket and/or a given delay and execute a task when one of the waited events occured.
Author: Romain Beauxis.
Bindings with C libraries
ocaml-glpk [26-Sep-2005, version 0.1.3, Beta]
Bindings to GLPK (GNU Linear Programming Kit) which is a package intended for solving large-scale linear programming (LP), mixed integer programming (MIP), and other related problems.
Author: Samuel Mimram.
Development tools
OCaml-Java [18-Feb-2010, version 1.4, Beta]
The goal of the OCaml-Java project is to allow seamless integration of OCaml and Java.
Author: Xavier Clerc.
Bindings with C libraries
OCaml-Lirc [03-Mar-2003, version 0.1.0, Beta]
OCaml bindings for the LIRC (Linux Infrared Remote Control) library.
Author: Damien Pous.
Bindings with C libraries
OCaml-R [11-Feb-2010, version 0.2, Beta] Has a tutorial
OCaml-R provides bindings to the R math library and the R library usable to embed R in your application.
Native OCaml libraries
OCaml-TDL [31-Mar-2004, version 0.4, Beta]
A small OCaml library providing functions to parse and print TODO lists in XML files.
Author: Maxence Guesdon.
Development tools
ocamlbuild-plus [30-Nov-2009, version 0.99, Beta]
Ocamlbuild-plus is an extension of ocamlbuild that enables to use findlib packages in its build plugins.
Author: Till Varoquaux.
Bindings with C libraries
OCamlfuse [26-Sep-2005, Beta]
Multithreaded binding to the fuse api.
Author: Vincenzo Ciancia.
Native OCaml libraries
OCMP [26-Sep-2011, version 0.1, Beta]
Implementation of MySQL Protocol with the Bitstring library.
Native OCaml libraries
ODNS [08-Feb-2011, version 0.3, Beta] Has a documentation
ODNS is a DNS library written in Objective Caml, with an API only in Objective Caml for now (soon probably a C API as well).
Author: Jehan Pagès.
Native OCaml libraries
Odot [19-Dec-2005, version 0.5, Beta]
Odot is a small OCaml library to parse and print Graphviz dot files. It comes with an additional module defining a Lablgtk2 box to display such graphs, and handle mouse clicks on nodes.
Author: Maxence Guesdon.
Scientific software
Plasma [05-Mar-2012, version 0.6, Beta] Has a Godi packageHas a documentation
Map/Reduce and distributed filesystem. This package contains two applications: PlasmaFS is a distributed filesystem, Plasma MapReduce is a Map/Reduce framework on top of PlasmaFS.
Author: Gerd Stolpmann.
Bindings with C libraries
Pocengine [14-Mar-2005, version 0.2.0, Beta] Has a documentation
A game engine to help creating more games more easily. The engine is written mainly in Ocaml with some XML and LUA.
Author: Julien Boulnois.
Scientific software
Schoca [26-Oct-2004, version 0.2.3, Beta] Has a Godi package
Schoca is an implementation of the Scheme language. The primary purpose of Schoca is the use as an embedded extension language in OCaml applications.
Author: Christoph Bauer.
Scientific software
SKS [12-Mar-2003, version 1.0.7, Beta] Has a documentation
SKS is a new OpenPGP keyserver whose goal is to provide easy to deploy, decentralized, and highly reliable synchronization. That means that a key submitted to one SKS server will quickly be distributed to all key servers, and even wildly out-of-date servers, or servers that experience spotty connectivity, can fully synchronize with rest of the system.
Author: Yaron M. Minsky.
Others
SRESI [31-Jul-2006, version 0.12.0, Beta] Has a documentation
SRESI is a smart bookmarks manager: from a list of tagged bookmarks, it can generate an exhaustive tree or a portal, where each bookmark is at every place in the hierarchy you can expect to find it, and with stupid branches absorbed back in their saner versions. An import function is provided.
Others
Stog [20-Mar-2013, version 0.8.0, Beta] Has a documentation
Stog is a kind of Jekyll in OCaml: It is a static web site generator, able to handle blog posts as well as regular pages.
Author: Maxence Guesdon.
Development tools
taggage [26-Aug-2003, version 1.1, Beta]
Vim tag file generation for OCaml.
Author: Issac Trotts.
Native OCaml libraries
Trie [09-Aug-2001, Beta]
Implementation of tries (maps over lists).
Development tools
TypeRex [19-Mar-2012, version 1.0.0, Beta] Has a documentation
OCaml development environment, developed by OCamlPro and Inria Saclay. This version of TypeRex only integrates with Emacs and brings a collection of new features that programmers expect from a modern IDE. Next versions will target more editors.
Others
Whenjobs [19-Mar-2012, version 0.7, Beta] Has a documentation
Whenjobs is a powerful but simple cron replacement. Two key advantages over cron are a simpler syntax for writing rules and a powerful dependency system that lets one job depend on variables set when other jobs run (allowing, for example, one job to run only when another job has finished successfully).
Development tools
WOWcamldebug [20-Oct-2003, version 0.2, Beta] Has a documentation
WOWcamldebug is a front end that permits to use the OCaml debugger with (g)vim. You can run it as you usually run ocamldebug and it will execute both the ocamldebugger itself, permitting usual interaction, and a gvim window which will be kept in sync with the current debugging position. The current debugging line is highlighted and the cursor is positioned at the current event position on that line.
Others
Xcaml [25-May-2004, version 1.0, Beta]
The Application System Xcaml (AS/Xcaml) is a full-featured web-application architecture based on Xcaml, a web-oriented syntax extension of the Objective Caml language.
Development tools
Xcode plug-in for OCaml [26-Sep-2005, Beta]
A plugin for integrating OCaml in Xcode. At this time, it's still a beta version but it now works on simple tasks like syntax coloration, creation of a native ocaml target, and adding .m files or .cma static libraries to the target, integration of ocamllex and ocamlyacc, integration into the Xcode build system, error window.
Author: Damien Bobillot.
Native OCaml libraries
Xdialog2Ocaml [27-Feb-2006, Beta]
To use Xdialog from OCaml.
Native OCaml libraries
Xhtml [09-Apr-2004, Beta]
XHTML is a O'Caml module for creating valid XHTML 1.1 (and XHTML 1.0) documents. The validity of the pages is guaranteed by the O'Caml type system. (NB: at the time of writing, forms support was not complete, only basic forms are implemented. Image maps are also not implemented yet.)
Author: Thorsten Ohl.
Native OCaml libraries
XmlRPCServer [02-Feb-2003, version 0.1.0, Beta] Has a documentation
XmlRPCServer is a server side implementation for the XmlRPC package developed by Shawn Wagner. This package provides methods to transform between OCaml data-types and their XmlRPC representation, and visa versa. In addition it provide the client side functionality which enables OCaml clients to call servers written in other languages using XmlRPC. However the current version of the package does not support writing the server side in OCaml, unless you do most of the work yourself.
Native OCaml libraries
Yacclib [01-Dec-2005, version 0.4, Beta]
Yacclib is a small OCaml library to parse and print OCamlyacc .mly files. It can also print dot graphs from these files. It comes with a graphical editor for .mly files.
Author: Maxence Guesdon.
Native OCaml libraries
Yacfe [03-Nov-2008, version 0.2, Beta]
Yet Another C/C++ Front-End, which is an OCaml API to write style-preserving source-to-source transformations such as refactorings on C or C++ source code.
Author: Yoann Padioleau.

Alpha

Scientific software
Berto [28-Feb-2011, version 0.1.1, Alpha]
BERTO is an experimental ray tracer implemented in the Objective-Caml programming language. In this project emphasis is put on physically based approximations and functional programming style.
Author: Kai Giese.
Scientific software
Dynamic Caml [16-May-2002, version 0.2, Alpha] Has a documentation
Dynamic Caml is a high-level run-time code generation library for Objective Caml. Implementation is based on an abstract polymorphic type 'a code and function eval : 'a code -> 'a that evaluates it. We introduce various constructors for the code type. All types within dynamically generated code are statically checked at programs compile time.
Authors: Dmitry Lomov and Anton Moskal.
Bindings with C libraries
gdome2-xslt [11-Apr-2003, version 0.0.6, Alpha]
A C and Objective Caml library to apply XSLT stylesheets to gdome2 documents.
Toys - Examples
Glome [12-Jan-2007, version 0.2, Alpha]
An experimental ray tracer using LablGL.
Author: Jim Snow.
Native OCaml libraries
Libml [08-Apr-2004, version alpha, Alpha]
Machine Learning Library, a library containing structures and algorithms, simply usable from most of common languages.
Others
Link [16-Sep-2002, Alpha]
A theorem prover for Multiplicative Linear Logics based on PROOF NETS Construction.
Scientific software
Mana [23-May-2005, version 0.0.2, Alpha]
Mana is a Japanese input engine, which converts phonetic representation to proper written forms. Mana models Japanese language as a HMM (Hidden Markovian Model), and its output is quite natural even for a long sentence. In addition to Japanese, mana can be used for Chinese once we have a necessary data.
Toys - Examples
mltree [13-Nov-2008, Alpha]
mltree is similar to the unix command line utility 'tree', but with some differences.
Author: Florent Monnier.
Development tools
Nickel [10-Sep-2007, version 1.0-alpha, Alpha] Has a documentation
Bridge/Bindings generator for Java/Objective Caml integration.
Author: Xavier Clerc.
Web application
Nurpawiki [12-Dec-2007, Alpha] Has a tutorial
Nurpawiki is a personal information manager (PIM) application that combines a wiki, a to-do list and a simple scheduler to help you get organized. It aims to ease note taking and action planning. Actions (to-dos) are always associated with notes or plans (wiki pages).
Author: Janne Hellsten.
Bindings with C libraries
OCaml-Xlib [13-Nov-2008, Alpha]
OCaml bindings for the Xlib library.Also includes GLX for OpenGL windowing.
Author: Florent Monnier.
Development tools
OCamlEditor [21-Feb-2011, version 1.6.0, Alpha]
OCamlEditor is a source code editor and build tool for OCaml written in OCaml+LablGTK working under Windows.
Native OCaml libraries
SimpleSOAP [24-May-2005, version 0.1.1, Alpha] Has a documentation
SimpleSOAP is an early, experimental SOAP client for Objective CAML.
Native OCaml libraries
STMlib [07-Mar-2007, version 0.0.1, Alpha] Has a documentation
This is a user-space implementation of STM (Software Transactional Memory) library for OCaml. It's mainly inspired by the STM library of Haskell, with some exceptions due to the different nature of languages and different strategies of implementation.
Author: Zheng Li.
Scientific software
virt-mem [18-Aug-2008, version 0.2.9, Alpha] Has a documentation
These are a collection of monitoring and management tools for virtual machines.
Native OCaml libraries
Vprint [24-Aug-2007, version 0.01, Alpha] Has a documentation
A runtime value printer for OCaml, extremely experimental at the moment, use at your own risk.
Author: Zheng Li.

Development code

Development tools
caml-get [11-May-2006, version 0.7, Development code] Has a documentationHas a tutorial
A tool to distribute pieces of OCaml code in a way similar to apt-get.
Author: Maxence Guesdon.
Native OCaml libraries
Camlspikes [05-May-2009, Development code]
Library for the (possibly distributed) simulation of networks of spiking neurons, with an emphasis on the quick and easy implementation of one's own neuron or synapse model.
Author: Guillaume Hennequin.
Others
cfind [19-Apr-2005, version 0.0.0, Development code]
cfind (Content FINDer) is a UNIX tool that provides functionality similar to that of Google Desktop from the command line.
Author: Radu Grigore.
Native OCaml libraries
GrabBag [12-Jan-2004, Development code]
A collection datastructure. Unordered insertion, uniformly random removal.
Author: Brock Wilcox.
Camlp4 extensions
Hashtbl syntax extension [30-Jun-2003, Development code]
Camlp4 syntax extension to get more {easy,perlish} usage of Hashtbl module hash tables.
Others
Maple-MuPad [23-Nov-2001, Development code]
A small tool that may help to convert a Maple code to MuPad.
Native OCaml libraries
mcmc-ocaml [14-Apr-2011, Development code]
A library for Markov-chain Monte Carlo computations in OCaml.
Author: Will M. Farr.
Development tools
OCaml plugin for the Netbeans IDE [27-Jul-2009, Development code] Has a tutorial
This plugin extends the support of NetBeans IDE for projects written in Objective Caml Language.
Native OCaml libraries
ocaml-osm-route [03-Jun-2008, Development code]
A quite simple program to do some basic routing over Open Streat Map maps. It parses an .osm.bz2 file, creates a compact data structure in memory (which is saved into a cache to speed up next searches), finds the OSM nodes closest to the source and goal points given as (latitude, longitude) couples, does the routing itself, prints it on the screen and saves it in .osm XML format (for example to load it into JOSM).
Author: David Mentre.
Others
Weidu [01-Feb-2006, version 188, Development code] Has a documentationHas a tutorial
WeiDU is a dialogue compiler, string patcher, script and text file extender for Infinity Engine games.
Author: Westley Weimer.

No status

Others
GeOCaml [11-Feb-2003, version 0.1]
A tool allowing to handle easily euclidian geometry.
Scientific software
MetaPRL [16-Feb-2004] Has a documentationHas a tutorial
The MetaPRL system combines the properties of an interactive LCF-style tactic-based proof assistant, a logical framework, a logical programming environment, and a formal methods programming toolkit.
Scientific software
Polygen [14-Oct-2003, version 1.0pre] Has a documentation
PolyGen is a program for generating random sentences according to a grammar definition, that is following custom syntactical and lexical rules.
Author: Alvise Spano.