sig
  val replace : string -> char -> char -> string
  val take_left : string -> int -> string
  val take_right : string -> int -> string
  val drop_left : string -> int -> string
  val drop_right : string -> int -> string
  val right_char : string -> char
  val left_char : string -> char
  val right_string : string -> string
  val left_string : string -> string
  val cons_left : char -> string -> string
  val cons_right : string -> char -> string
  val replace_meta_chars : string -> string
  val replace_xml_chars : string -> string
  val replace_printf_chars : string -> string
  val insert_meta_chars : string -> (char * string) list -> string
  val map : (char -> char) -> string -> string
  val map2 : (char -> char -> char) -> string -> string -> string
  val chars_of_string : string -> char list
  val string_of_chars : char list -> string
  val join : string list -> string -> string
  val split : string -> string -> string list
  val string_of_char : char -> string
  val replace_chars_in_string : (char -> string) -> string -> string
  val test : string -> unit
end