sig
  type os_type = Win32 | Unix | Cygwin
  exception Error of string
  val get_os_type : ExtUtils.Utils.os_type
  val replicate : int -> 'a -> 'a list
  val apply : ('a -> 'b) -> 'a -> 'b
  val apply' : 'a -> ('a -> 'b) -> 'b
  type 'a cfun = 'a -> 'a -> int
  val comp : 'a ExtUtils.Utils.cfun
  val compare_2_tup :
    'a ExtUtils.Utils.cfun * 'b ExtUtils.Utils.cfun ->
    'a * 'b -> 'a * 'b -> int
  val compare_3_tup :
    'a ExtUtils.Utils.cfun * 'b ExtUtils.Utils.cfun * 'c ExtUtils.Utils.cfun ->
    'a * 'b * 'c -> 'a * 'b * 'c -> int
  val fixpoint : ('a -> 'a) -> 'a -> 'a
  val compare_to_equal : ('a -> 'a -> int) -> 'a -> 'a -> bool
  val flip : ('a -> 'b -> 'c) -> 'b -> 'a -> 'c
end