Dear Caml riders, I found by chance the "The invert Benchmark" (http://www.lib.uchicago.edu/keith/crisis/benchmarks/invert/). As you will notice the Caml code (even compiled) performs poorly. I guess part of the problem is due to using Map when Hashtbl is more suited. So I tried to rewrite the code using Hashtbl (attached to this mail). What I got some trouble to figure out is how to get a list of the keys where each of the keys appears only once. I eventually went the easy way. Anybody got better ideas to improve efficiency? Could a "keys" function be an interesting addition to Hashtbl??? Another related question that popped up is: how to _efficiently_ implement a join operation (join : string -> string list -> string is defined by: join c [s1;...;sn] = s1 ^ c ^ ... ^ c ^ sn) ? Cheers, ChriS