X-Git-Url: http://git.nguyen.vg/gitweb/?a=blobdiff_plain;f=src%2Ftatoo.ml;h=eac804a039a27f829e787e2b900543b80c59ff9e;hb=refs%2Fheads%2Ffeature%2Ffast-multipass;hp=6464cb4be8e307820171cfcaf2d1319a05ab5bf6;hpb=e56b9fbeaed04c1f2fb7019de34f7d8e87d6db73;p=tatoo.git diff --git a/src/tatoo.ml b/src/tatoo.ml index 6464cb4..eac804a 100644 --- a/src/tatoo.ml +++ b/src/tatoo.ml @@ -15,8 +15,6 @@ open Format - - let time f arg msg = let t1 = Unix.gettimeofday () in let r = f arg in @@ -108,7 +106,8 @@ let main () = let module Naive = Run.Make(Naive_tree) in let result_list = - let root = [ Naive_tree.root doc] in + let root = Sequence.create () in + let () = Sequence.add (Naive_tree.root doc) root in let f, msg = match !Options.parallel, !Options.compose with true, true -> @@ -122,13 +121,6 @@ let main () = in time f () ("evaluating query in " ^ msg ^ " mode") in - let s = Naive.stats () in - Run.( - Logger.msg `STATS - "@[tree size: %d@\ntraversals: %d@\ntransition fetch cache hit ratio: %f@\ntransition eval cache hit ratio: %f@]" - s.tree_size s.run - (float s.fetch_trans_cache_hit /. float s.fetch_trans_cache_access) - (float s.eval_trans_cache_hit /. float s.eval_trans_cache_access)); time (fun () -> let count = ref 1 in List.iter (fun results -> @@ -136,10 +128,10 @@ let main () = output_string output (string_of_int !count); output_string output "\" >\n"; if !Options.count then begin - output_string output (string_of_int (List.length results)); + output_string output (string_of_int (Sequence.length results)); output_char output '\n'; end else - List.iter (fun n -> + Sequence.iter (fun n -> Naive_tree.print_xml output doc n; output_char output '\n' ) results;