src/HOLCF/Tools/Domain/domain_constructors.ML
changeset 35470 13f3675c9644
parent 35468 09bc6a2e2296
child 35472 c23b42730b9b
equal deleted inserted replaced
35469:6e59de61d501 35470:13f3675c9644
  1087       fun args_list [] = Constant "_noargs"
  1087       fun args_list [] = Constant "_noargs"
  1088         | args_list xs = foldr1 (app "_args") xs;
  1088         | args_list xs = foldr1 (app "_args") xs;
  1089       fun one_case_trans (pat, (con, args)) =
  1089       fun one_case_trans (pat, (con, args)) =
  1090         let
  1090         let
  1091           val cname = Constant (syntax con);
  1091           val cname = Constant (syntax con);
  1092           val pname = Constant (syntax con ^ "_pat");
  1092           val pname = Constant (syntax pat);
  1093           val ns = 1 upto length args;
  1093           val ns = 1 upto length args;
  1094           val xs = map (fn n => Variable ("x"^(string_of_int n))) ns;
  1094           val xs = map (fn n => Variable ("x"^(string_of_int n))) ns;
  1095           val ps = map (fn n => Variable ("p"^(string_of_int n))) ns;
  1095           val ps = map (fn n => Variable ("p"^(string_of_int n))) ns;
  1096           val vs = map (fn n => Variable ("v"^(string_of_int n))) ns;
  1096           val vs = map (fn n => Variable ("v"^(string_of_int n))) ns;
  1097         in
  1097         in