18 if lib.versionAtLeast ocaml.version "4.06" then
19 throw "mezzo is not available for OCaml ${ocaml.version}"
23 check-ocaml-version = lib.versionAtLeast (lib.getVersion ocaml);
26 assert check-ocaml-version "4";
33 src = fetchFromGitHub {
37 sha256 = "0yck5r6di0935s3iy2mm9538jkf77ssr789qb06ms7sivd7g3ip6";
59 # Sets warning 3 as non-fatal
61 lib.optionalString (check-ocaml-version "4.02") ''
62 substituteInPlace myocamlbuild.pre.ml \
63 --replace '@1..3' '@1..2+3'
65 # Compatibility with PPrint ≥ 20220103
67 substituteInPlace typing/Fact.ml --replace PPrintOCaml PPrint.OCaml
70 createFindlibDestdir = true;
78 homepage = "http://protz.github.io/mezzo/";
79 description = "Programming language in the ML tradition, which places strong emphasis on the control of aliasing and access to mutable memory";
80 license = licenses.gpl2;
81 platforms = ocaml.meta.platforms or [ ];