|
type bpoint { x : int; getx : bpoint -> int; setx : bpoint -> int -> bpoint; bouge : bpoint -> bpoint };; |
|
let bpoint x0 = let super = point x0 in { x = super.x0; getx = super.getx; setx = super.setx; bouge = (fun self -> self.setx self (self.getx self + 1));} |
| · | Le type de self dans super est point et non bpoint.
|
| · | La méthode setx retourne un point et non un bpoint.
|