(* open the HashTable module or prefix each function below *)
   open HashTable; 
 (* define a new exception for use when a lookup fails - name courtesy of Sunjay *)
    exception CannotFindIt;
 (* this is the function that will be used to hash the "keys" in the hashtable
   -- using "string" as the key in this example *)
    val hash_fn : string->word = HashString.hashString;
 (* this is the function that will be used to compare keys for equality
   -- using "string" as the key in this example *)
    val cmp_fn : string*string->bool = (op =);
(* this will be used to define the initial size for the table -- selected arbitrarily for this example *)
    val initial_size : int = 101;
   (* create the table configured with the parameters from above *)
    val tbl : (string,int) hash_table = mkTable (hash_fn, cmp_fn)
    (initial_size, CannotFindIt);
(* example uses below *)
    insert tbl ("foo",9);
    insert tbl ("bar",27);
    find tbl "foo";
    find tbl "bar";
    lookup tbl "foo";
    lookup tbl "bar";