463 (Code_Target.add_language |
463 (Code_Target.add_language |
464 (target, { serializer = serializer, literals = literals, |
464 (target, { serializer = serializer, literals = literals, |
465 check = { env_var = "SCALA_HOME", |
465 check = { env_var = "SCALA_HOME", |
466 make_destination = fn p => Path.append p (Path.explode "ROOT.scala"), |
466 make_destination = fn p => Path.append p (Path.explode "ROOT.scala"), |
467 make_command = fn _ => |
467 make_command = fn _ => |
468 "env JAVA_OPTS='-Xms128m -Xmx512m -Xss2m' \"$SCALA_HOME/bin/scalac\" $ISABELLE_SCALAC_OPTIONS ROOT.scala" } }) |
468 "isabelle_scala scalac $ISABELLE_SCALAC_OPTIONS ROOT.scala" } }) |
469 #> Code_Target.set_printings (Type_Constructor ("fun", |
469 #> Code_Target.set_printings (Type_Constructor ("fun", |
470 [(target, SOME (2, fn print_typ => fn fxy => fn [ty1, ty2] => |
470 [(target, SOME (2, fn print_typ => fn fxy => fn [ty1, ty2] => |
471 brackify_infix (1, R) fxy ( |
471 brackify_infix (1, R) fxy ( |
472 print_typ BR ty1 (*product type vs. tupled arguments!*), |
472 print_typ BR ty1 (*product type vs. tupled arguments!*), |
473 str "=>", |
473 str "=>", |