type 'a option = None | Some of 'a type 'a elem = {v: 'a; mutable next: 'a lista} and 'a lista = 'a elem option