class ['a] cell x =
  object
    val mutable contents : 'a = x
    method get = x
    method set x = contents <- x
  end;;