open Printf
+let _ =
+ Helm_registry.set "getter.mode" "remote";
+ Helm_registry.set "getter.url" "http://helm.cs.unibo.it:58081/"
+
let _ =
let module P = CicNotationPt in
let level = ref ~-1 in
| P.Print t ->
print_endline (CicNotationPp.pp_term t); flush stdout
| P.Notation (l1, associativity, precedence, l2) ->
- prerr_endline "foo";
print_endline "Extending notation ..."; flush stdout;
ignore
(CicNotationParser.extend l1 ?precedence ?associativity
(fun env loc ->
prerr_endline "ENV";
prerr_endline (CicNotationPp.pp_env env);
- CicNotationSubst.instantiate_level2 env l2)))
+ CicNotationFwd.instantiate_level2 env l2))
+ | P.Interpretation (l2, l3) ->
+ print_endline "Adding interpretation ..."; flush stdout;
+ let time1 = Unix.gettimeofday () in
+ ignore (CicNotationRew.add_interpretation l2 l3);
+ let time2 = Unix.gettimeofday () in
+ printf "done (patterns compilation took %f seconds)\n"
+ (time2 -. time1);
+ flush stdout
+ | P.Render uri ->
+ let obj, _ = CicEnvironment.get_obj CicUniv.empty_ugraph uri in
+ let annobj, _, _, id_to_sort, _, _, _ =
+ Cic2acic.acic_object_of_cic_object obj
+ in
+ let annterm =
+ match annobj with
+ | Cic.AConstant (_, _, _, _, ty, _, _)
+ | Cic.AVariable (_, _, _, ty, _, _) -> ty
+ | _ -> assert false
+ in
+ let time1 = Unix.gettimeofday () in
+ let t, id_to_uri =
+ CicNotationRew.ast_of_acic id_to_sort annterm
+ in
+ let time2 = Unix.gettimeofday () in
+ printf "ast creation took %f seconds\n" (time2 -. time1);
+ print_endline (CicNotationPp.pp_term t); flush stdout)
(* CicNotationParser.print_l2_pattern ()) *)
| 1 -> ignore (CicNotationParser.parse_syntax_pattern istream)
| 2 ->