module Face = struct let newf gd1 gd2 perm = let n = end;; module type Zonep = sig exception BadIn val newz : float array array -> (float array -> float array -> float -> 'a) array -> float array array * (int -> float -> float array -> float array -> 'a) end;; module type Facetp = sig val ray : wh -> vel -> int end;; module Z = (Zone : Zonep);;