Sto tentando di simulare un'interfaccia in OCaml e sto usando il costrutto "tipo". Ho due tipi:Tipi di OCaml con diversi livelli di specificità
type fooSansBar = {a: string; b: int};;
type fooConBar = {a:string; b:int; bar:char};;
... e vorrei definire un particolare fooSansBar:
let fsb = {a="a"; b=3};;
... ma è stato detto che il campo bar non è definito. Da questo, sembra che, contrariamente ai valori che ho passato nella corrispondenza della firma di fooSansBar, il sistema crede che sto cercando di creare un fooConBar. È possibile creare un fooSansBar se esistono i due tipi sopra definiti?
In aggiunta (perché sono nuovo di OCaml) c'è un modo migliore per simulare un'interfaccia?