(** [read filename] is the contents of [filename] as a string. The empty string is returned if [filename] does not exist. *) let read filename = let chan = In_channel.open_text filename in let content = In_channel.input_all chan in In_channel.close chan ; content