ocamldsort is a dependecy sorter for OCaml source files.

The ocamldsort command scans a set of OCaml source files (.ml and .mli files), sorts them according to their dependencies and prints the sorted files in order to link their corresponding .cmo and .cmi files.

ocamldsort can be used to compile and link simple projects with one command, such as:

ocamlc $(ocamldsort *.ml)

if your project doesn't contain .mli files or:

ocamlc -c $(ocamldsort -mli *.ml *.mli) && ocamlc $(ocamldsort -byte *.ml)

if it contains .mli files.

However for larger projects where separate compilation is desirable, ocamldsort can also be used from within a makefile. See the README file for a typical makefile.

HΘ is a Haskell library designed for studying the combinatorics of the cell category Θ of Joyal. It was written as part of a research project (joint with Georges Maltsiniotis) whose purpose was to define orientals for the objects of Θ (similar to the orientals of Street for the simplex category Δ). The program showed that this is impossible for objects of Θ of dimension 4 on. As a workaround, we introduced a subcategory Ξ of Θ which is also implemented in HΘ.

HΘ can be used interactively with ghci. For instance, the following ghci session computes the number of subojects in Θ of the object indexing the exchange law:

ghci> :l Theta/Monos
Ok, modules loaded: Theta, Theta.Monos, ExtList, Theta.Objects, Delta.
ghci> :m + Theta
ghci> length $ subObjs $ wreath2 (delta 2) (delta 2)

(This number shows why a computer program might help!)

The tarball contains five short standalone programs showing how the library can be used (all these programs were written for our own research and are not ad hoc examples).

There is no documentation for the library and almost no comments in the source code. If you are interested in doing some computations related to Θ, feel free to contact me.