type
'a pile = 'a list ref;;
let
créer() = ref [];;
let
ajouter x p = p := x :: !p;;
exception
Vide;;
let
retirer p =
match
!p
with
| [] ->
raise
Vide
| x::t -> p:= t; x;;