Added dart and ocaml implementations