- This one
is a prototype Camlp4 syntax extension
of Objective Caml with mixin modules.
It is simplistic: only the composition and close operators have been implemented.
Moreover, the type system of OCaml is not powerful enough to deal with mixin
modules, and so the extension uses lots of unsafe type coercions. It should
be seen as an experiment for ensuring that our compilation scheme
for mixin modules is valid, rather than as a compiler for mixin modules.
- This is
a prototype type-checker for Caml with mixin
modules, based on the OCaml compiler. It implements a theory I formalized
back in spring 2002, which has changed a lot since then. In particular, the
type system of the prototype is in fact unsound, because it allows width
subtyping on mixin modules. This is due to the mistake the theory makes in
identifying modules with concrete mixin modules. I think that more recent
versions of the theory would allow to implement the same examples, without
this unsoundness.
- This is a prototype
for CMSv, written in
Objective Caml. It includes some
example files to illustrate the power and the weaknesses of
CMSv.
|