sig
  type 'a t
  val create : len:int -> 'Core_weak.t
  val length : 'Core_weak.t -> int
  val set : 'Core_weak.t -> int -> 'Heap_block.t option -> unit
  val get : 'Core_weak.t -> int -> 'Heap_block.t option
  val sexp_of_t : ('-> Sexplib.Sexp.t) -> 'Core_weak.t -> Sexplib.Sexp.t
end