877 |
877 |
878 val _ = Theory.setup |
878 val _ = Theory.setup |
879 (Code_Target.add_language |
879 (Code_Target.add_language |
880 (target_SML, {serializer = serializer_sml, literals = literals_sml, |
880 (target_SML, {serializer = serializer_sml, literals = literals_sml, |
881 check = {env_var = "", |
881 check = {env_var = "", |
882 make_destination = fn p => Path.append p (Path.explode "ROOT.ML"), |
882 make_destination = fn p => p + Path.explode "ROOT.ML", |
883 make_command = fn _ => |
883 make_command = fn _ => |
884 "isabelle process -e 'datatype ref = datatype Unsynchronized.ref' -f 'ROOT.ML' -l Pure"}, |
884 "isabelle process -e 'datatype ref = datatype Unsynchronized.ref' -f 'ROOT.ML' -l Pure"}, |
885 evaluation_args = []}) |
885 evaluation_args = []}) |
886 #> Code_Target.add_language |
886 #> Code_Target.add_language |
887 (target_OCaml, {serializer = serializer_ocaml, literals = literals_ocaml, |
887 (target_OCaml, {serializer = serializer_ocaml, literals = literals_ocaml, |
888 check = {env_var = "ISABELLE_OCAMLFIND", |
888 check = {env_var = "ISABELLE_OCAMLFIND", |
889 make_destination = fn p => Path.append p (Path.explode "ROOT.ml") |
889 make_destination = fn p => p + Path.explode "ROOT.ml" |
890 (*extension demanded by OCaml compiler*), |
890 (*extension demanded by OCaml compiler*), |
891 make_command = fn _ => |
891 make_command = fn _ => |
892 "\"$ISABELLE_OCAMLFIND\" ocamlopt -w pu -package zarith -linkpkg ROOT.ml </dev/null"}, |
892 "\"$ISABELLE_OCAMLFIND\" ocamlopt -w pu -package zarith -linkpkg ROOT.ml </dev/null"}, |
893 evaluation_args = []}) |
893 evaluation_args = []}) |
894 #> Code_Target.set_printings (Type_Constructor ("fun", |
894 #> Code_Target.set_printings (Type_Constructor ("fun", |